首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ffmpeg是否支持KLV元数据?

ffmpeg是否支持KLV元数据?
EN

Stack Overflow用户
提问于 2014-09-06 21:56:39
回答 2查看 12.5K关注 0票数 11

http://wiki.multimedia.cx/index.php?title=FFmpeg_Metadata是否也支持MISB标准无人机元数据601.5中描述的ffmpeg元数据?是不是跟KLV一样?

谢谢,阿兰

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-06 03:36:42

FFMPEG本身并不支持MISB KLV元数据,目前也不支持这些类型的KLV元数据的解复用器或解码器。

然而,FFMPEG可用于从诸如符合ISO 13818-1的MPEG传输流(TS)的容器中提取数据基本流。这种功能适用于UDP流和本地MPEG TS文件。请参阅响应末尾的示例。示例只是从流中提取数据,而不对其进行解析。通过使用包括C和Python在内的许多语言对输出或后处理进行管道传输,可以轻松地实时完成解析。

明确地知道您正在尝试从哪些容器中提取数据会很有帮助。为了代替这些信息,我在响应和示例中假定了MPEG TS。我还想指出,在做出这一回应时,"UAS Local Dataset" is now ST0601.8的当前标准。

我个人在Mac 10.9.5上用FFMPEG 2.5.4测试了以下示例。

可以修改以下示例,以便通过将<outfile>替换为“-”来将输出发送到标准输出。

以线速从MPEG-TS文件中提取数据流并保存为二进制文件:

代码语言:javascript
复制
ffmpeg -i <MPEGTS_infile> -map data-re -codec copy -f data <binary_outfile>

以帧率从MPEG-TS文件中提取数据流并保存为二进制文件:

代码语言:javascript
复制
ffmpeg -re -i <MPEGTS_infile> -map data-re -codec copy -f data <binary_outfile>

以流速率从MPEG-TS UDP流中提取数据流并保存为二进制文件:

代码语言:javascript
复制
ffmpeg -i udp://@<address:port> -map data-re -codec copy -f data <binary_outfile>

以流速率从MPEG-TS UDP流中提取数据流,并将其定向到STDOUT:

代码语言:javascript
复制
ffmpeg -i udp://@<address:port> -map data-re -codec copy -f data -

以帧速率通过UDP流式传输MPEG-TS文件中的视频、音频和数据流:

代码语言:javascript
复制
ffmpeg -re -i <MPEGTS_infile> -map 0 -c copy -f mpegts udp://<address:port>
票数 18
EN

Stack Overflow用户

发布于 2014-09-07 01:33:14

我不确定无人机元数据601.5是否与KLV相同,但自2013年10月28日提交69a042e以来,FFmpeg可以对KLV元数据进行解复用:

  • mpegts: demux synchronous SMPTE 336M Key-Length-Value (KLV) metadata

这修复了标签#2579:Data stream from UAV video reported as "Unknown" type and without codec_id set,所以你也可以在那里找到其他相关的信息。

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

https://stackoverflow.com/questions/25701034

复制
相关文章

相似问题

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