[FFmpeg-devel] [PATCH 2/6] lavu/channel_layout: implement unknown layouts.

Nicolas George nicolas.george at normalesup.org
Thu Nov 29 19:07:17 CET 2012


Le nonidi 9 frimaire, an CCXXI, Michael Niedermayer a écrit :
> The problem is the code uses the current layout for finding the number
> of channels, adding a new system and deprecating the old does not
> fix it.

Deprecating the old will print a warning on code that use it, and hopefully
it will get fixed. If not, it will become an error when the deprecation
becomes a removal after enough bumps.

> not using the layout for finding the array size fixes it

We can not fix code that is not in ffmpeg.

> If you add a "better" system then in 90% of the cases that cant be
> handled currently i suspect it will just list "unknown layout" of
> X channels.
> We can do that today, its layout = 0

Except in lavfi until the next major bump.

> lavfi is a bunch of bits / bytes / source code, it sure can be changed
> by us.

Not the applications that use it, until the next major bump.

> movie fails in this case due to a unsupported channel layout, it has
> to currently for sure and i dont see why this should change if we
> allow layout=0 on filter graph input

You are wrong. The application I showed works for usual files, because movie
and the rest of the filters can work with stereo. Then the user updates
libavfilter.so.3 into a newer version: with your fix, it becomes capable of
reading TrueHD files, and gets layout=0. Depending on how the rest of the
application is implemented, it could result in a buffer overflow.

If that is not an API break, I do not know what is.

Regards,

-- 
  Nicolas George
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20121129/e1f876ba/attachment.asc>


More information about the ffmpeg-devel mailing list