MP4Box可用於生成符合MPEG-DASH規范的內容,也就是ISO / IEC 23009-1在ISO公共可用標准中可用的內容。
dash切片命令: mp4box -dash 5000 -frag 1000 -profile live -rap name.mp4#video name.mp4#audio -out ./name/index.mpb
生成Fragmented MP4命令: MP4Box -dash 1000 -rap -frag-rap name.mp4
分割MP4文件:mp4box -split time_sec foo.mp4
-dash Duration: 使用給定的段持續時間對輸入文件進行DASH分段。 對於onDemand配置文件,每個媒體演示文稿都是單個片段,此選項設置子片段的持續時間。
-dash-live[=File] DUR 使用dur段持續時間生成實時DASH會話,可選地將實況上下文寫入F. MP4Box將運行實時會話,直到按下“q”或發生致命錯誤。
-frag dur_in_ms: 以毫秒為單位指定子段的持續時間。 這段時間總是小於段的持續時間。 默認情況下(未設置時),子段持續時間是DASH持續時間,即每個段只有一個子段。 對於按需配置文件,如果每個媒體演示文稿都是單個分段,則此選項將設置分段的子分段的持續時間。
-rap 強制分段從隨機訪問的點開始。由於編碼的視頻數據沒有被修改,分段持續時間可能不是由-dash所要求的。
-frag-rap 所有片段將以隨機訪問點開始。 因為編碼的視頻數據沒有被修改,所以片段持續時間可能不是正好是-frag要求的。(僅限ISOBMF)
-profile NAME 指定目標文件:onDemand(點播),live(直播),main(主要),simple(簡單),full(所有), 和兩個文件用DASH-IF: dashavc264:live, dashavc264:onDemand。這將設置默認的選項值,以確保符合所需的配置文件。
-out filename 指定MPD的輸出文件名稱。 可以使用相對路徑。 所有的段都將在MPD的同一個目錄中生成。
bento4中命令行工具
mp4info --format json name.mp4 查看MP4詳細信息包括編碼
mp4fragment --fragment-duration 1000 name.mp4 frag_name.mp4 生成 fragment MP4可以用MediaSource播放
ffmpeg工具
ffmpeg -i name.mp4 -f segment -segment_time 10 -segment_format_options movflags=+faststart name%03d.mp4 分割MP4文件