[FFmpeg-devel] [PATCH] HWAccel infrastructure (take 4)
Gwenole Beauchesne
gbeauchesne
Thu Feb 19 18:07:41 CET 2009
On Thu, 19 Feb 2009, Reimar D?ffinger wrote:
> On Thu, Feb 19, 2009 at 05:04:27PM +0100, Gwenole Beauchesne wrote:
>> I don't understand this argument. Actually, ::get_format is a pointer to
>> function and avcodec_default_get_format() is a function, so IIRC the test
>> should work. However, that would obviously have failed if ::get_format was
>> a pointer. i.e. sizeof(void *) != sizeof(void (*)(void));
>
> As I remember it, taking the address of the function in libavcodec will
> result a pointer to the actual code, whereas in an external program it
> will point to the start of the stub which on first call activates the
> dynamic loader.
Then, there probably is a tool problem. I mean, if you build a shared lib,
the address of the function in lavc is also the stub. libavcodec is
probably not built correctly on that platform.
The comparison is valid or could you please tell me the chapter/verse in
the normative reference saying otherwise? I will check tonight but I am
pretty sure this has to work.
Anyway, I will probably re-add Ivan's idea to use an extra is_hwaccel bit
in PixFmtInfo[] to simplify the check and filter out HW accelerated
formats in avcodec_default_get_format(). I am sorry but I believe
Michael's suggestion has precedence over yours, unless he tells me
otherwise now. ;-)
More information about the ffmpeg-devel
mailing list