[FFmpeg-devel] [PATCH] libavformat/matroskadec.c: Eliminate spurious "File is broken, keyframes not correctly marked!" in valid WebM

Monty Montgomery xiphmont at gmail.com
Thu Sep 19 17:49:37 CEST 2013


OK then, the second option is clearly wrong.

Any feedback on the first?

Monty

On Wed, Sep 11, 2013 at 10:16 AM, Michael Niedermayer <michaelni at gmx.at> wrote:
> On Wed, Sep 11, 2013 at 03:37:18AM -0400, Monty Montgomery wrote:
>> > I think it was supposed to warn for both cases.
>>
>> Ah, OK.
>>
>> > To my knowledge there were also files where nothing at all was marked as keyframe, causing seeking to not work at all.
>>
>> I don't think that's an issue here.
>>
>> > Is it really ok/sensible to not have a keyframe marked as such?
>>
>> That doesn't appear to be the problem; the warning is tripped by audio
>> blocks, not video.  That is,  skip_to_keyframe is set, and we land on
>> an audio block... which, strictly speaking, is indeed supposed to
>> flagged as a keyframe.
>>
>
>
>> I suppose it would also work to alter:
>>
>>     if (matroska->skip_to_keyframe && track->type !=
>> MATROSKA_TRACK_TYPE_SUBTITLE){
>>
>> to
>>
>>     if (matroska->skip_to_keyframe && track->type !=
>> MATROSKA_TRACK_TYPE_SUBTITLE && track->type !=
>> MATROSKA_TRACK_TYPE_AUDIO){
>
> that does more than affect the printing of the warning
> make fate
> ...
> --- ./tests/ref/seek/lavf-mkv   2013-09-10 13:20:32.876122008 +0200
> +++ tests/data/fate/seek-lavf-mkv   2013-09-11 16:01:40.662145892 +0200
> @@ -1,48 +1,48 @@
>  ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
>  ret: 0         st:-1 flags:0  ts:-1.000000
> -ret: 0         st: 0 flags:1 dts: 0.011000 pts: 0.011000 pos:    739 size: 27837
> +ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
>  ret: 0         st:-1 flags:1  ts: 1.894167
> -ret: 0         st: 0 flags:1 dts: 0.971000 pts: 0.971000 pos: 292153 size: 27834
> +ret: 0         st: 1 flags:1 dts: 0.967000 pts: 0.967000 pos: 291936 size:   209
>  ret: 0         st: 0 flags:0  ts: 0.788000
> -ret: 0         st: 0 flags:1 dts: 0.971000 pts: 0.971000 pos: 292153 size: 27834
> +ret: 0         st: 1 flags:1 dts: 0.967000 pts: 0.967000 pos: 291936 size:   209
>  ret: 0         st: 0 flags:1  ts:-0.317000
> -ret: 0         st: 0 flags:1 dts: 0.011000 pts: 0.011000 pos:    739 size: 27837
> +ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
>  ret:-1         st: 1 flags:0  ts: 2.577000
>  ret: 0         st: 1 flags:1  ts: 1.471000
> -ret: 0         st: 1 flags:1 dts: 0.993000 pts: 0.993000 pos: 319994 size:   209
> +ret: 0         st: 1 flags:1 dts: 0.967000 pts: 0.967000 pos: 291936 size:   209
>  ret: 0         st:-1 flags:0  ts: 0.365002
> -ret: 0         st: 0 flags:1 dts: 0.491000 pts: 0.491000 pos: 146706 size: 27925
> +ret: 0         st: 1 flags:1 dts: 0.470000 pts: 0.470000 pos: 146489 size:   209
>  ret: 0         st:-1 flags:1  ts:-0.740831
> -ret: 0         st: 0 flags:1 dts: 0.011000 pts: 0.011000 pos:    739 size: 27837
> +ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
>  ret:-1         st: 0 flags:0  ts: 2.153000
>  ret: 0         st: 0 flags:1  ts: 1.048000
> -ret: 0         st: 0 flags:1 dts: 0.971000 pts: 0.971000 pos: 292153 size: 27834
> +ret: 0         st: 1 flags:1 dts: 0.967000 pts: 0.967000 pos: 291936 size:   209
>  ret: 0         st: 1 flags:0  ts:-0.058000
>  ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
>  ret: 0         st: 1 flags:1  ts: 2.836000
> -ret: 0         st: 1 flags:1 dts: 0.993000 pts: 0.993000 pos: 319994 size:   209
> +ret: 0         st: 1 flags:1 dts: 0.967000 pts: 0.967000 pos: 291936 size:   209
>  ret:-1         st:-1 flags:0  ts: 1.730004
>  ret: 0         st:-1 flags:1  ts: 0.624171
> -ret: 0         st: 0 flags:1 dts: 0.491000 pts: 0.491000 pos: 146706 size: 27925
> +ret: 0         st: 1 flags:1 dts: 0.470000 pts: 0.470000 pos: 146489 size:   209
>  ret: 0         st: 0 flags:0  ts:-0.482000
> -ret: 0         st: 0 flags:1 dts: 0.011000 pts: 0.011000 pos:    739 size: 27837
> +ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
>  ret: 0         st: 0 flags:1  ts: 2.413000
> -ret: 0         st: 0 flags:1 dts: 0.971000 pts: 0.971000 pos: 292153 size: 27834
> +ret: 0         st: 1 flags:1 dts: 0.967000 pts: 0.967000 pos: 291936 size:   209
>  ret:-1         st: 1 flags:0  ts: 1.307000
>  ret: 0         st: 1 flags:1  ts: 0.201000
>  ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
>  ret: 0         st:-1 flags:0  ts:-0.904994
> -ret: 0         st: 0 flags:1 dts: 0.011000 pts: 0.011000 pos:    739 size: 27837
> +ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
>  ret: 0         st:-1 flags:1  ts: 1.989173
> -ret: 0         st: 0 flags:1 dts: 0.971000 pts: 0.971000 pos: 292153 size: 27834
> +ret: 0         st: 1 flags:1 dts: 0.967000 pts: 0.967000 pos: 291936 size:   209
>  ret: 0         st: 0 flags:0  ts: 0.883000
> -ret: 0         st: 0 flags:1 dts: 0.971000 pts: 0.971000 pos: 292153 size: 27834
> +ret: 0         st: 1 flags:1 dts: 0.967000 pts: 0.967000 pos: 291936 size:   209
>  ret: 0         st: 0 flags:1  ts:-0.222000
> -ret: 0         st: 0 flags:1 dts: 0.011000 pts: 0.011000 pos:    739 size: 27837
> +ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
>  ret:-1         st: 1 flags:0  ts: 2.672000
>  ret: 0         st: 1 flags:1  ts: 1.566000
> -ret: 0         st: 1 flags:1 dts: 0.993000 pts: 0.993000 pos: 319994 size:   209
> +ret: 0         st: 1 flags:1 dts: 0.967000 pts: 0.967000 pos: 291936 size:   209
>  ret: 0         st:-1 flags:0  ts: 0.460008
> -ret: 0         st: 0 flags:1 dts: 0.491000 pts: 0.491000 pos: 146706 size: 27925
> +ret: 0         st: 1 flags:1 dts: 0.470000 pts: 0.470000 pos: 146489 size:   209
>  ret: 0         st:-1 flags:1  ts:-0.645825
> -ret: 0         st: 0 flags:1 dts: 0.011000 pts: 0.011000 pos:    739 size: 27837
> +ret: 0         st: 1 flags:1 dts: 0.000000 pts: 0.000000 pos:    523 size:   208
> TEST    seek-lavf-mulaw
> Test seek-lavf-mkv failed. Look at tests/data/fate/seek-lavf-mkv.err for details.
> make: *** [fate-seek-lavf-mkv] Error 1
> make: *** Waiting for unfinished jobs....
>
> [...]
>
> --
> Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
>
> Everything should be made as simple as possible, but not simpler.
> -- Albert Einstein
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>


More information about the ffmpeg-devel mailing list