[FFmpeg-devel] [PATCH] lavf/matroskadec: stop mapping text/plain attachments to AV_CODEC_ID_TEXT

Anton Khirnov anton at khirnov.net
Wed Jun 8 20:38:14 EEST 2022


Quoting Soft Works (2022-06-08 17:38:31)
> > Tests. Lots of tests.
> > If any change in behaviour is a breaking change for you, then git commit
> > hash is the library version you should use.
> 
> Not any change, but for a change in output, I'd say yes. I mean - isn't that
> what FATE is checking? And don't you say "breaks FATE" when the an output
> changes?

We generally do not make hard guarantees about the output produced by
the libraries, otherwise almost everything would be a compatibility
break (e.g. adding support for previously unimplemented codec or
container features).
We only promise to make best effort to produce "sensible" output, where
"sensible" has no strict definition and is subject to discussion and
consensus among developers. In this case, I argued that previous
behavior was a bug and nobody disagreed so far.

"breaks FATE" is a shortcut, it means only that the output has changed.
That may be because a change broke something, but it also happens that
there is a legitimate reason for the output changing, then the test
references are simply updated.

> 
> After all, I'm still having a hard time in assimilating the logic and mindsets 
> here. I'm obviously coming from a very different background and certain things 
> just don't make sense to me, so I have to ask many questions, when I can't 
> believe it, I ask once again, and again and re-assure that it's really that 
> way that I can hardly believe. When the versions do not guarantee anything
> besides API compatibility, then there's almost not practical value in having
> them, because things can always go wrong no matter whether those versions
> match or not as you always need to test thoroughly. You would be able
> to rule out some combinations up-front, but that's it.
> Also, given that fact that matching versions do not guarantee anything of
> practical value, who would then still want to mix ffmpeg libs from different 
> Git revisions based on those version numbers? I can't compute this ;-)

API compatibility is of great practical value to many people. To the
contrary, I'd say that absolute output stability is far less important
to most our users.

-- 
Anton Khirnov


More information about the ffmpeg-devel mailing list