将无缝播放信息添加到 AAC

Adding Gapless Playback information to AAC

我目前正在尝试开发视频/音频编码管道。 我的目标是对包含 h264 视频轨道和 AAC 音频轨道的 mp4 文件进行编码。这些文件应该一个接一个地播放,中间没有任何间隙。

目前我正在用 ffmpeg 转换视频。 不幸的是,我的输入文件缺少无缝播放元数据,AAC 轨道的无缝播放需要这些元数据。

事实上,我正在寻找一种方法来添加 iTunSMPB udta 评论,因为 Exoplayer 需要它。 (有关详细信息,请参阅解析器:GaplessInfoHolder.java

我找不到通过 ffmpeg 添加它的方法 (ffmpeg AAC encoder doc),我是不是错过了什么?

甚至 Wikipedia 只列出了两个应该能够做到这一点的转换器:Nero Digital 和 Itunes。但此信息可能已过时。

你们中有人知道可以将此元数据添加到 mp4 文件的 java 库或(linux)命令吗?

我希望你们中的一些人能够帮助我。 谢谢。

我这里的信息有误!

这里是我最近几天学到的东西,以防有人无意中看到这个条目:

有两种不同的方法可以将无缝信息保存在 aac 轨道中。我上面提到的那个是 iTunes 转换器的旧处理。这后来在 ISO 标准中被(重新)定义,这将在 edts + sgpd 原子中保存无间隙信息。

要使用不同的 AAC 数据进行测试,您可以使用 fdkaac

ISO标准原子也将由ffmpeg的默认aac编码器自动添加。

希望此信息对大家有所帮助。