我尝试了几种标记轨迹的方法,例如使用
MP4Box -lang 3=jpn file.mp4
然后做了
MP4Box -name 3="5.1 Surround" file.mp4
并且 VLC 中的文件仅显示其标签
Track 2 [Japanese]
旁注:是的,我正在选择想要重命名的正确音轨,即文件中的第 3 轨。
答案1
可以使用 FFmpeg 以这种方式添加元数据。为了演示这一点,我创建了一个具有以下属性的测试文件:
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661) [...]
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo,
要使用 FFmpeg 向音频流添加标签,请尝试以下语法:
ffmpeg -i test.mp4 -c copy \
-metadata:s:a:0 language=jpn -metadata:s:a:0 title="5.1 Surround" \
testing.mp4
一些说明:
-c copy
:将两个流不经编码复制到新容器。如果没有此过程,FFmpeg 实际上不会放置标签。-metadata:s:a:0
:将元数据添加到:s流:Audio:第一个音轨。请注意,这是 0,而不是您可能期望的 1。还请注意,-metadata
每次添加额外的元数据时都必须重复该选项。
各个媒体播放器对这些标签的尊重有点不一致,但以这种方式添加的标签会被mediainfo
……所接受。
参考: