X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fffmpeg%2Fproducer%2Finput%2Finput.cpp;h=ac772b8a9cdb50077234ea59b03c9ef25ae735b0;hb=dd0fc2703b330461b26e0a2935d72a5fcf3970c0;hp=83933c50a1b6bc06a0c5afe154123e257d059704;hpb=15f87be8b9a1732eaadcf2a095f4385a336fd982;p=casparcg diff --git a/modules/ffmpeg/producer/input/input.cpp b/modules/ffmpeg/producer/input/input.cpp index 83933c50a..ac772b8a9 100644 --- a/modules/ffmpeg/producer/input/input.cpp +++ b/modules/ffmpeg/producer/input/input.cpp @@ -196,7 +196,17 @@ struct input::implementation : boost::noncopyable CASPAR_LOG(trace) << print() << " Looping."; } else + { + // Needed by some decoders to decode remaining frames based on last packet. + auto flush_packet = create_packet(); + flush_packet->data = nullptr; + flush_packet->size = 0; + flush_packet->pos = -1; + + buffer_.push(flush_packet); + executor_.stop(); + } } else {