[FFmpeg-devel] [PATCH] dshow: allow for more codecs take 2

Roger Pack rogerdpack2 at gmail.com
Fri Dec 13 21:10:33 CET 2013


On 2/14/13, Hendrik Leppkes <h.leppkes at gmail.com> wrote:
> On Thu, Feb 14, 2013 at 1:20 AM, Roger Pack <rogerdpack2 at gmail.com> wrote:
>>>> still seems to not work correctly:
>>>>
>>>> <BBB-work> someone broke msvc dll builds by marking ff_codec_bmp_tags[]
>>>> with av_export
>>>> <BBB-work> can whoever did that fix it?
>>>> <BBB-work> https://github.com/libav/c99-to-c89/issues/5
>>>>
>>>>
>>>> [...]
>>>
>>> This is also covered by a fate instance:
>>> http://fate.ffmpeg.org/history.cgi?slot=x86_32-msvc10-dll-windows-native
>>>
>>> Shared tables cannot be used as a constant initializer.
>>
>> so can anyone suggest something here?  I want to use ff_codec_bmp_tags
>> shared, but apparently this is a special case where av_export won't
>> work with it, because it is used elsewhere as a constant initializer?
>> If there's no response I suppose I will just add a new (exported)
>> method to riff.c that returns the table, and use that instead of raw
>> access to the table...does that sound good?
>> -roger-
>
>
> It appears there already are functions for what you want:
> - avformat_get_riff_video_tags gives you ff_codec_bmp_tags
> - avformat_get_riff_audio_tags gives you ff_codec_wav_tags in case you
> need this too
>
> In general i think its a bad idea to export ff* functions and tables,
> if something is needed rename it to avpriv* or for data tables a
> getter function is a good idea, because sharing tables is always a bit
> of a pain.

It might be nice if ff_raw_pix_fmt_tags in libavcodec/raw.c were
exposed via a method as well, instead of being exported as they are
today...


More information about the ffmpeg-devel mailing list