在FFMPEG中将数据流与video一起编码
我想将一些专有数据(它是每帧的序列化无符号64位整数)编码为video容器(mp4)作为数据流,但我无法找到任何人这样做的任何指令/教程。
我唯一能找到的是这个,它描述了如何创建数据流(用户似乎没有成功)显然https://lists.libav.org/pipermail/ffmpeg-user/2006-November/005070 .html )
这是我目前创建流的代码:
ff_data_stream = avformat_new_stream(ff_output_context, NULL); ff_data_stream->codec->codec_type = AVMEDIA_TYPE_DATA; ff_data_stream->codec->codec_id = AV_CODEC_ID_NONE; ff_data_stream->codec->flags |= CODEC_FLAG_GLOBAL_HEADER;
但是当我调用avformat_write_header
它会将以下输出错误地发送到控制台:
[mp4 @ 0x7fff68000900] track 1:找不到容器中当前不支持的标签,编解码器
所以我的问题如下:
- 是否可以使用mp4容器创建数据流? 如果没有,有没有容器呢?
- 这可能不是正确的方法,但我还没有遇到任何这样做的方法。
- 如果是这样,我该如何正确配置流? (无论是这个容器还是其他容器)
- 那么在写入文件时会使用AVPacket吗? 并使用
av_interleaved_write_frame
将其写入文件?
谢谢