我想编辑/操作一个mp4文件而不对帧进行解码/编码,并想知道它是否可行。
假设我有2组音频/视频编码为完全相同的参数。
在视频方面说我有一系列的帧,如: IBPPBPPBPPB 我想改变这个(其中 - >是我插入的) IBPPB-> IBPP
这可行吗?
我想通过删除/插入样本来做与AAC音频类似的事情。
答案 0 :(得分:0)
在某些情况下,可以在不解码/编码帧的情况下操纵mp4文件的内容。例如,您可以将MP4文件拆分为单独的文件,或者连接mp4文件。通常,如果您具有兼容的编码配置,则连接有效。
对于AAC音频流,音频帧之间没有解码依赖关系,因此如果流具有相同的配置,则可以在mp4级别进行编辑而不会出现问题。
对于视频流,再次使用相同的配置,您需要从随机访问点(闭合gop)开始连接流。
对于所有这些操作,您可以使用MP4Box:
MP4Box -split 10:20 file.mp4 -out file-split-10-20.mp4
将创建一个仅包含10秒的新文件。
MP4Box -cat file1.mp4 -cat file2.mp4 output.mp4
将连接两个文件以生成新文件。