1

我有一个 video_file.mp4 并且我知道mdat原子包含 H.264 帧。我的项目中还有一个 H.264 编解码器库。那么,如果我将mdat原始数据放入我的 lib 的 byte * decode(byte * data, int timeMsec) 方法中,我会得到一个解码帧,我对吗?或者我需要额外的操作?谢谢!

4

1 回答 1

0

有两种常见的 H.264 比特流打包格式。1. 附件 B 2. MP4。对于 MP4,打包模式不同,通常解码器更喜欢附件 B,但并非总是如此。MP4 以长度为前缀,附件 B 包含起始代码。一些 MP4 解包器会将比特流转换为附件 B,但不是全部。在不同的打包格式之外——如果你的 mp4 文件包含任何其他流——比如——音频——你的整个方法都行不通。mdat 框包含所有交错的流。

于 2012-08-19T15:58:20.117 回答