首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FFmpeg fourcc Avi编解码器支持列表?

FFmpeg fourcc Avi编解码器支持列表?
EN

Stack Overflow用户
提问于 2012-01-04 21:50:23
回答 3查看 15K关注 0票数 10

在stackoverflow上有几个类似的问题,但我还没能解决这个确切的问题。

我想得到FFMpeg可以解码的avi编解码器的fourcc列表。

我知道如何获得所有格式的ffmpeg -formats和编解码器ffmpeg -codecs,但这两个列表都没有给我一个可访问的fourccs列表。我能找到的文档也不是。

我需要这个列表,这样我的应用程序就可以访问avi文件的fourcc,并确定是使用ffmpeg还是VfW (或DirectX)来尝试解码该文件。

有没有什么ffmpeg命令可以给我这个列表?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-03-23 00:25:16

我不知道它是否全面,但源代码似乎包含了一个FourCC列表。

看看http://ffmpeg.org/doxygen/trunk/isom_8c-source.html

有很多像这样的行

代码语言:javascript
复制
{ CODEC_ID_AAC,             MKTAG('m', 'p', '4', 'a') }

您应该能够下载最新的源代码,并编写一个脚本来挑选它们。

票数 6
EN

Stack Overflow用户

发布于 2012-08-29 03:01:14

为了扩展达伦上面给出的答案(因为注释工具不允许这么多文本),下面是从ffmpeg.org上的isom_8c源文件解析的编解码器的完整列表:

代码语言:javascript
复制
raw     yuv2    2vuy    yuvs    L555    L565    B565    24BG
BGRA    RGBA    ABGR    b16g    b48r    bxbg    bxrg    bxyv
NO16    DVOO    R420    R411    R10k    R10g    r210    AVUI
AVrp    SUDS    v210    bxy2    v308    v408    v410    Y41P
yuv4    jpeg    mjpa    AVDJ    AVRn    dmb1    mjpb    SVQ1
svq1    svqi    SVQ3    mp4v    DIVX    XVID    3IV2    h263
s263    dvcp    dvc     dvpp    dv5p    dv5n    AVdv    AVd1
dvhq    dvhp    dvh1    dvh2    dvh4    dvh5    dvh6    dvh3
VP31    rpza    cvid    8BPS    smc     rle     WRLE    qdrw
WRAW    avc1    ai5p    ai5q    ai52    ai53    ai55    ai56
ai1p    ai1q    ai12    ai13    ai15    ai16    m1v1    mpeg
m1v     m2v1    hdv1    hdv2    hdv3    hdv4    hdv5    hdv6
hdv7    hdv8    hdv9    hdva    mx5n    mx5p    mx4n    mx4p
mx3n    mx3p    xd54    xd55    xd59    xd5a    xd5b    xd5c
xd5d    xd5e    xd5f    xdv1    xdv2    xdv3    xdv4    xdv5
xdv6    xdv7    xdv8    xdv9    xdva    xdvb    xdvc    xdvd
xdve    xdvf    xdhd    xdh2    AVmp    mjp2    tga     tiff
gif     png     MNG     vc-1    avs2    drac    AVdn    H263
3IVD    AV1x    AVup    sgi     dpx     exr     apch    apcn
票数 12
EN

Stack Overflow用户

发布于 2013-12-05 22:35:59

可以通过avformat api进行映射,而不需要深入研究源代码。

代码语言:javascript
复制
 uint32_t tag = MKTAG('H', '2', '6', '4');
 const struct AVCodecTag *table[] = { avformat_get_riff_video_tags(), 0 };
 enum AVCodecID vcodec = av_codec_get_id(table, tag );

函数avformat_get_riff_video_tagsavformat_get_riff_audio_tagsav_codec_get_id都在“libavformat/avformat.h.h”中定义。

还可以使用表AVOutputFormat.codec_tagAVInputFormat.codec_tag获取特定格式的映射

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8727992

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档