用途
使用 MP4BOX + Yamb 來封裝、解封裝(分軌抽離)。
包含封裝或抽離影軌、音軌、內含(掛)字幕檔。
- 有含有字幕檔的 MP4 可以透過 Flash 播放。
起因
- 對 MP4 可 封裝/內掛 字幕的可能性感到好奇,更對其是否可應用在 Flash 播放有內掛字幕的 MP4 感興趣。
結果
- 可以內掛!也可以順利在 Flash 上面播放!可惜的是字體的控制,還沒實驗成功!
實驗後得解
- 用 MP4BOX 下指令即可達到封裝、指定軌抽取。
- 用 MP4BOX 的 GUI → Yamb 則更為方便,且可抽取出 srt 字幕格式。
- Flash 支援播放 MP4 內的字幕!但是無法指定字體,以美觀為前提的實用度有待商確XD(正確來說是就算有指定字體,播放也仍為系統預設字體:新細明體)
- MP4BOX只支援這些字幕格式:*.srt, *.sub, *.ttxt, *.xml(QuickTime TeXML)
- 封裝字幕方面,可能需要字幕格式互換工具轉成 *.srt:Subresync(可互相轉換 *.srt, *.sub, *.ssa, *.ass, *.smi, *.psb)
- 另外用MP3為音軌來封裝的話,
雖然電腦播很正常,但是 Flash播放會無聲,PSP、PS3 疑似也不支援
推薦用 H.264 + AAC 來封 MP4
方法
- 用 MP4BOX 來對 MP4 封裝或解封裝
- 只不過單純用指令抽出來的沒有時間軸!!只有文字啊! 囧""
- 所以建議要透過另一家出版的GUI介面(Yamb),才可以抽出來的時候同時轉回SRT格式
相關工具軟體免安裝配置方法:
- 下載 MP4BOX 備用:0.4.5 或 0.4.4 版都可
- 取得讓你不用碰指令模式的主要幫手:Yamb
- 兩者都解壓縮
- 把 MP4BOX 解出來的 MP4BOX.exe 放進 Yamb 資料夾內
- 執行 Yamb.exe 即可開始操作!
- 詳細操作方法請參考:此篇
注意!
- 用指令抽的字幕檔,會直接是 .tx3g 格式
記事本打開看只剩下台詞,沒有時間(軸) 囧
另外如果要玩抽取又封裝的話
例如從MKV抽取H.264+AAC,封到MP4
記得看一下原始檔的fps,封裝的時候要跟原始影片一樣
不然封到MP4可能會有影音不同步的現象。
- 以下敘述指令均假設來源檔、輸出檔與 MP4BOX.exe 在同資料夾下
如果該檔案與 MP4BOX.exe 在不同資料夾,請將指令的 " " 內,改寫成【完整路徑+完整檔名】的形式。
封裝
用命令提示字元模式,到MP4BOX的資料夾,使用以下指令
MP4Box.exe -fps fps數值 -add "影像檔名" -add "音效檔名" -add "字幕檔名" "要輸出的檔名"
舉例(影片檔名1.1.h264、聲軌1.1.aac、字幕檔1.1.srt;輸出檔名Output.mp4)
MP4Box.exe -fps 23.976 -add "1.1.h264" -add "1.1.aac" -add "1.1.srt" "Output.mp4"
抽軌(解封裝)
用命令提示字元模式,到MP4BOX的資料夾,使用以下指令
MP4Box.exe "完整檔名" -raw 你想抽的軌道數(通常 1、2 可能是影像跟聲音)
舉例(檔名為title10.mp4、字幕在第3軌時)
MP4Box.exe "title10.mp4" -raw 3
分割
指定片段
使用 -split 相關指令可以快速達成。
例如下面的寫法是指定讓一部 n.mp4 裡面第1555秒~1843秒的部分,分割出來。
MP4Box.exe -split-chunk 1555:1843 n.mp4
還有其他的分割指令詳細可以參考:使用 MP4BOX 分割 或 合併 檔案
その他
字幕是否可以抽離?
- 理論上,字幕抽離應該跟MKV的狀況相同。
判斷
- 觀察該 MP4 裡面有沒有封入「字幕檔」。
判斷方式:看可不可以開關或切換字幕。
- 如果完全不能開關字幕,就代表是內嵌的字幕,整個印在影片上不可抽離。
可以切換的應該就可以抽。
MP4 裡面可以封裝的各種格式
- 以下根據 MP4BOX 的說明得知一些MP4支援封裝的格式
Suppported raw formats and file extensions:
- NHNT:.media .nhnt .info
- NHML:.nhml (opt: .media .info)
- MPEG-1-2 Video:.m1v .m2v
- MPEG-4 Video:.cmp .m4v
- H263 Video:.263 .h263
- AVC/H264 Video:.h264 .h26L .264 .26L
- JPEG Images:.jpg .jpeg
- PNG Images:.png
- MPEG 1-2 Audio:.mp3, .m1a, .m2a
- ADTS-AAC Audio:.aac
- AMR(WB) Audio:.amr .awb
- EVRC Audio:.evc
- SMV Audio:.smv
Supported containers and file extensions:
- AVI:.avi
- MPEG-2 PS:.mpg .mpeg .vob .vcd .svcd
- MPEG-2 TS:.ts .m2t
- QCP:.qcp
- OGG:.ogg
- ISO-Media files:no extension checking
Supported text formats:(MP4支援封裝的字幕格式)
- SRT Subtitles:.srt
- SUB Subtitles:.sub
- GPAC Timed Text:.ttxt
- QuickTime TeXML Text:.xml (cf QT documentation)
Supported Scene formats:
- MPEG-4 XMT-A:.xmt .xmta .xmt.gz .xmta.gz
- MPEG-4 BT:.bt .bt.gz
- VRML:.wrl .wrl.gz
- X3D-XML:.x3d .x3d.gz
- X3D-VRML:.x3dv .x3dv.gz
- MacroMedia Flash:.swf (very limitted import support only)
來源
LM電腦版提問的友人詳答
最終更新:2016年09月12日 14:04