X-Git-Url: https://cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fthirdparty%2Fsrc%2Fffmpeg.git.patchC;h=e197e5fb4049946c7739c6f68cb0a1ee35cbc18a;hb=77c806636b4a94f41c724e45208201eb926dd8ce;hp=bce5202ef8ab5a1e3d0647e944af15386eb0f3d2;hpb=2e9b85a9600790c491e3c4bf62bce17b195f91ae;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/thirdparty/src/ffmpeg.git.patchC b/cinelerra-5.1/thirdparty/src/ffmpeg.git.patchC index bce5202e..e197e5fb 100644 --- a/cinelerra-5.1/thirdparty/src/ffmpeg.git.patchC +++ b/cinelerra-5.1/thirdparty/src/ffmpeg.git.patchC @@ -1,16 +1,16 @@ --- a/libavcodec/encode.c +++ b/libavcodec/encode.c -@@ -191,7 +191,7 @@ +@@ -290,7 +290,7 @@ } if (!frame->buf[0]) { - if (!(avctx->codec->capabilities & AV_CODEC_CAP_DELAY || + if (avci->draining && !(avctx->codec->capabilities & AV_CODEC_CAP_DELAY || - (avci->frame_thread_encoder && avctx->active_thread_type & FF_THREAD_FRAME))) + avci->frame_thread_encoder)) return AVERROR_EOF; -@@ -243,8 +243,10 @@ - avpkt->flags |= avci->intra_only_flag; +@@ -309,8 +309,10 @@ + ret = ff_encode_encode_cb(avctx, avpkt, frame, &got_packet); } - if (avci->draining && !got_packet) @@ -19,9 +19,9 @@ avci->draining_done = 1; + } - end: - if (ret < 0 || !got_packet) -@@ -365,10 +367,16 @@ + return ret; + } +@@ -491,10 +493,16 @@ if (avci->draining) return AVERROR_EOF;