亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2981 | 回復(fù): 2
打印 上一主題 下一主題

[Android] MP4文件的分割算法 [復(fù)制鏈接]

論壇徽章:
80
20周年集字徽章-慶
日期:2020-10-28 14:09:1215-16賽季CBA聯(lián)賽之北京
日期:2020-10-28 13:32:5315-16賽季CBA聯(lián)賽之北控
日期:2020-10-28 13:32:4815-16賽季CBA聯(lián)賽之天津
日期:2020-10-28 13:13:35黑曼巴
日期:2020-10-28 12:29:1520周年集字徽章-周	
日期:2020-10-31 15:10:0720周年集字徽章-20	
日期:2020-10-31 15:10:07ChinaUnix元老
日期:2015-09-29 11:56:3020周年集字徽章-年
日期:2020-10-28 14:14:56
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2015-10-28 13:54 |只看該作者 |倒序瀏覽
本帖最后由 baopbird2005 于 2015-11-19 14:25 編輯

所謂“分割”,就是把大文件切成小文件,要實現(xiàn)mp4的分割,

  首先,需要獲取到關(guān)鍵幀列表
  然后,選擇要分割的時間段(比如從關(guān)鍵幀開始)
  接著,重新生成moov box(注意所有相關(guān)的box 以及 box size都需要改變)
  最后,拷貝對應(yīng)的數(shù)據(jù),生成新文件
  第一點,上面已經(jīng)介紹了,第二點,只需要遍歷關(guān)鍵幀列表,就能找到離你想要分割的時間段最接近的關(guān)鍵幀,第四點就是“copy-paste”的工作,關(guān)鍵在于第三點。因為這一步涉及到stbl下的所有box,必須重新生成entrys,同樣的,其他的box都還好,只需要保留關(guān)鍵幀所對應(yīng)的sample和chunk,其余的刪掉即可,只是stsc box的比較麻煩,說起來比較啰嗦,還是直接看代碼吧:


 修改完box之后,需要重新生成moov box,由于moov box的大小以及時長等信息都發(fā)生了改變,所以需要box的大小做相應(yīng)的修改,這點千萬不能忘記,否則播放器會解析錯誤。重新生成box之后,還要計算一下分割后的數(shù)據(jù)的長度,由于數(shù)據(jù)長度也發(fā)生了改變,所以修改mdat box的大小的同時,要同時修改stbl下所有box的chunk offset,切記!

  以下是整個的邏輯過程:



好了,所有這些都實現(xiàn)之后,就具備了做mp4點播系統(tǒng)的條件了




論壇徽章:
80
20周年集字徽章-慶
日期:2020-10-28 14:09:1215-16賽季CBA聯(lián)賽之北京
日期:2020-10-28 13:32:5315-16賽季CBA聯(lián)賽之北控
日期:2020-10-28 13:32:4815-16賽季CBA聯(lián)賽之天津
日期:2020-10-28 13:13:35黑曼巴
日期:2020-10-28 12:29:1520周年集字徽章-周	
日期:2020-10-31 15:10:0720周年集字徽章-20	
日期:2020-10-31 15:10:07ChinaUnix元老
日期:2015-09-29 11:56:3020周年集字徽章-年
日期:2020-10-28 14:14:56
2 [報告]
發(fā)表于 2015-10-28 13:55 |只看該作者
這個僅僅提供一種思路

論壇徽章:
0
3 [報告]
發(fā)表于 2015-10-29 17:39 |只看該作者
本帖最后由 奇門遁甲-lu 于 2015-10-29 17:39 編輯

我在android 上做過 用ffmpeg做的。
ffmpeg 1.mp4  -vcodec copy -acodec copy 1.ts
ffmpeg 2.mp4  -vcodec copy -acodec copy 2.ts
合并,cat 1.ts 2.ts > 12.ts.
再轉(zhuǎn)mp4     ffmpeg 12.ts -vcodec copy -acodec copy   12.mp4
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP