[libav-bugs] [Bug 212] New: av_codec_get_id() and av_codec_get_tag() are useless for external users

bugzilla-daemon at aruru.libav.org bugzilla-daemon at aruru.libav.org
Sun Jan 22 23:42:32 CET 2012


http://bugzilla.libav.org/show_bug.cgi?id=212

           Summary: av_codec_get_id() and av_codec_get_tag() are useless
                    for external users
           Product: Libav
           Version: git HEAD
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: Normal
         Component: libavformat
        AssignedTo: bugzilla at libav.org
        ReportedBy: kalle.blomster at gmail.com


These two functions map libav CodecID's and Microsoft-style FourCC's to each
other. However, in order to get them to work you must pass them a struct
containing such mappings (ff_codec_bmp_tags etc, from riff.h), creating a
catch-22 situation: without the mapping tables, you can't get a result, and
without the results you can't get the mapping tables. Because of this, and the
fact that the declaration of AVCodecTag is hidden in internal.h, these two
public API functions are useless to external users.

Preferably this should be resolved by providing a supported way of accessing
the relevant tables from outside libavformat; the simplest way of doing that
would probably be to add a public API function that simply returns a pointer to
the requested table and moving the declaration of AVCodecTag to avformat.h
(instead of forward-declaring it there). The functionality is required for
people who want to use libavcodec to decode things but have their own
demuxer(s).

-- 
Configure bugmail: http://bugzilla.libav.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.


More information about the libav-bugs mailing list