264768502
核心会员
核心会员
帖子: 402
注册时间: 2010-09-23 17:38

MP4(AVC+AC3)封装 itags+utf8 handler+chapter

折腾了下,由于目前各个mp4 muxer都无法满足如标题的要求
于是只好自己多鼓捣鼓捣现有的工具,然后终于搞出个蠢办法来做
用到的工具有
L-Smash standalone muxer
mp4tagger
winhex

1.拿L-Smash standalone muxer做muxer,给需要的track添加上handler
2.mp4tagger给mp4添加title
3.winhex编辑成品mp4,把handler替换成utf8编码

实例:
1.muxer --chapter Q:\test\M1_utf8.txt -i "E:\MediaTools\SKU\M1.264?fps=24000/1001,language=jpn" -i "E:\MediaTools\SKU\M1j6.ac3?language=jpn,handler=123456789012345" -o G:\M1.mp4
2.带UI的工具,打开就知道怎么用了,略
3.实际需要的handler name=日本語 5.1ch (utf8:E697A5E69CACE8AA9E20352E316368)
winhex打开mp4,搜123456789012345,然后把这段的16进制数据都替换成E697A5E69CACE8AA9E20352E316368
这么做目前没发现什么后遗症


好吧,其实这个需求偏门了一点,本来觉得QuickTime改title name会好一点,但总找不到能让其支持AC3的插件(Windows下)
mp4box虽然能一次满足所有这些需求,不过鉴于其比较RP,于是没用
而ffmpeg搞不定handler name,真是可惜...
l-smash虽然help里提到itunes metadata,不过竟然是骗人的,只是在todo里,真混蛋! 另外l-smash里添加的handler竟然是本机编码...不知道如果把命令行转到utf8会不会有效果,这样至少能免去第三步了
这样还有个缺点就是没法批量...要是有很多文件这样,我就跪了(果然抛弃mp4用mkv)
cunhan
核心会员
核心会员
帖子: 214
注册时间: 2010-09-20 22:09

Re: MP4(AVC+AC3)封装 itags+utf8 handler+chapter

handler name你就不能写英文么,这又不是title name,没必要那么计较嘛
264768502
核心会员
核心会员
帖子: 402
注册时间: 2010-09-23 17:38

Re: MP4(AVC+AC3)封装 itags+utf8 handler+chapter

有强迫症...菜单里写什么我就想填什么...
头像
06_taro
核心会员
核心会员
帖子: 998
注册时间: 2010-09-22 18:32
来自: United Kingdom
联系: 网站

Re: MP4(AVC+AC3)封装 itags+utf8 handler+chapter

+1
可以的話原盤寫啥就想用啥的蛋疼星人表示mp4要搗鼓的東西還是挺多的
つまんねー事聞くなよ!

I, personally, for me, believe (obviously sometimes) that my OS choice is right. That's me. I'm not telling you that you should believe it. Learn the facts, and the origins behind the facts, and make up your own damn mind. That's why you have one. (source)

Follow me: @06_taro

304——
为纪念伟大的宇宙史上最强压制304先生,联合国教科文组织决定,将每年的第304天,即平年的10月31日或者闰年的10月30日,定为世界304日。

回到 “封装容器 / Container muxer and demuxer”