#11451: Duplicate frames dropped when copying Theora streams
------------------------------------+------------------------------------
             Reporter:  Bernat      |                    Owner:  (none)
                 Type:  defect      |                   Status:  new
             Priority:  normal      |                Component:  avformat
              Version:  git-master  |               Resolution:
             Keywords:              |               Blocked By:
             Blocking:              |  Reproduced by developer:  0
Analyzed by developer:  0           |
------------------------------------+------------------------------------
Changes (by Bernat):

 * component:  undetermined => avformat
 * version:  unspecified => git-master


Old description:

> Hi. I'm working on Theora decoding support for Godot. Almost everything
> is working fine except for some kind of video streams.
>
> Theora encodes duplicate frames (frames identical to the previous one) as
> empty packets. Those empty packets seem to be discarded by FFmpeg when
> doing an operation that involves copying a Theora stream.
>
> Example: ffmpeg -i input.ogv -c:v copy -a:n copy output.ogv
>
> I've tried to find the issue in the source code, and although I'm not
> familiar with FFmpeg, I think the issue is here:
> https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/libavformat/oggenc.c#l693
>
> I've read on some commit that empty packets are dropped to fix some issue
> with FLAC streams but they shouldn't be discarded for Theora streams as
> they encode duplicate frames.
>
> I hope this can be easily fixed. Thanks in advance. Cheers.

New description:

 Hi. I'm working on Theora decoding support for Godot. Almost everything is
 working fine except for some kind of video streams.

 Theora encodes duplicate frames (frames identical to the previous one) as
 empty packets. Those empty packets seem to be discarded by FFmpeg when
 doing an operation that involves copying a Theora stream. It doesn't
 happen when encoding.

 Example: ffmpeg -i input.ogv -c:v copy -a:n copy output.ogv

 Although I'm not familiar with the code, I've searched the code for the
 cause and I think I found a possible regression in this commit:
 
https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/18f24527eb4b520585e55f922cdbc234aa9f0f18

 The following line in the Ogg encoder is dropping empty packets:
 https://git.ffmpeg.org/gitweb/ffmpeg.git/blob/HEAD:/libavformat/oggenc.c#l693

 I hope this can be easily fixed. Thanks in advance. Cheers.

--
-- 
Ticket URL: <https://trac.ffmpeg.org/ticket/11451#comment:1>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
_______________________________________________
FFmpeg-trac mailing list
FFmpeg-trac@avcodec.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-trac

To unsubscribe, visit link above, or email
ffmpeg-trac-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to