ffmpeg C ++和AVFormatContext

时间:2012-03-20 14:37:18

标签: c++ ffmpeg

我对ffmpeg有疑问。

如何在程序中初始化AVFormatContext。我知道可以制作av_open_input_file并使用我的AVFormatContext作为参数之一,但我想用于解码的数据不在文件中。我从程序的其他组件中获取它作为char *数组。是否可以仅使用此数据数组初始化AVFormatContext结构。

1 个答案:

答案 0 :(得分:0)

看看这些功能,它们可能很有用。

AVInputFormat *av_find_input_format(const char *short_name);

AVInputFormat *av_probe_input_format(AVProbeData *pd, int is_opened);

AVInputFormat *av_probe_input_format2(AVProbeData *pd, int is_opened, int *score_max);

AVInputFormat *av_probe_input_format3(AVProbeData *pd, int is_opened, int *score_ret);

int av_probe_input_buffer(AVIOContext *pb, AVInputFormat **fmt,
                           const char *filename, void *logctx,
                           unsigned int offset, unsigned int max_probe_size);

我使用输出数据而不是输入数据(我的输入数据是从视频设备抓取的原始帧)。你输入的数据是什么?