[FFmpeg-devel] [PATCH] avio API cleanup II

Anssi Hannula anssi.hannula
Sun Feb 20 00:10:33 CET 2011

On 19.02.2011 22:41, Michael Niedermayer wrote:
> On Sat, Feb 19, 2011 at 07:46:46PM +0100, Anton Khirnov wrote:
>> On Sat, Feb 19, 2011 at 04:01:22PM +0100, Michael Niedermayer wrote:
>>> On Sat, Feb 19, 2011 at 12:42:44PM +0100, Anton Khirnov wrote:
>>>> Hi,
>>>> due to BBB being lazy, here's the updated batch of renames.
>>>> The basic idea is that functions working on AVIOContext (formerly
>>>> ByteIOContext) get an avio_ prefix, while functions working on
>>>> URLContext (to be renamed to AVURLContext) get an av_url_ prefix.
>>>> Comments welcome.
>>> You are making hundreads of internal functions part of the public API
>>> The correct prefix is ff not av for quite a few i think
>>> That said if you make things part of the public API have you thought about
>>> the structs being ready for this? Can they be extended without breaking ABI?
>> They aren't internal, being in an installed header makes them de facto
>> public. As the attached log (huge thanks to Flameeyes for making it) shows,
>> many/most of those are actually used by other projects.
>>> old team: technical reviews
>>> new team: political reviews because they plain dont know they code for which
>>>           they review, the people knowing have been kicked out
>> If you have some specific functions that should be kept private in mind,
>> please say which ones. But keep your insults to yourself.
> If you feel insulted by a comparission of past and present reviews and code
> quality then maybe you should look into improving the present and not ask
> the messenger to shutup.
> about flameeyes list, id love to see the actual cases where some things are used
> ill start with xbmc:
>    virtual void put_byte(ByteIOContext *s, int b) { ::put_byte(s, b); }
>    virtual void put_buffer(ByteIOContext *s, const unsigned char *buf, int size) { ::put_buffer(s, buf, size); }
>    virtual void put_be32(ByteIOContext *s, unsigned int val) { ::put_be32(s, val); }
>    virtual void put_be16(ByteIOContext *s, unsigned int val) { ::put_be16(s, val); }
> ...
> they are just some odd wrapers that are unused

Those four are used in

> do you want to make a fool of yourself by making code public API because of
> that?
> If not i suggest you listen to people who do real reviews and who know the code
> and there are many on the new team too that do proper reviews.
> [...]

Anssi Hannula

More information about the ffmpeg-devel mailing list