【问题标题】:Editing an mp4 by manipulating samples通过操作样本编辑 mp4
【发布时间】:2015-07-17 00:14:17
【问题描述】:

我想在不解码/编码帧的情况下编辑/操作一个 mp4 文件,并且想知道这是否可能。

假设我有 2 组音频/视频编码为完全相同的参数。

在视频方面说我有一系列帧,例如: IBPPBPPBPPB 我想将其更改为(-> 是我要插入的内容) IBPPB->IBPP

这样可以吗?

我想通过删除/插入样本来对 AAC 音频做类似的事情。

【问题讨论】:

  • 如果您确定要替换 关键帧 + 相关帧直到下一个关键帧,这应该是可能的。我能想到的唯一问题是运动矢量可能会导致“像素粥”,但我认为每个关键帧都会重置它们(未确认)。最好的办法是在遇到问题时尝试然后显示代码...

标签: audio mp4 video-processing h.264 aac


【解决方案1】:

在某些情况下,可以在不解码/编码帧的情况下操作 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

将连接两个文件以生成一个新文件。

【讨论】:

    猜你喜欢
    • 2012-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-15
    • 1970-01-01
    相关资源
    最近更新 更多