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

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪問(wèn)板塊 發(fā)新帖
查看: 2982 | 回復(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)] [報(bào)告]
發(fā)表于 2015-10-28 13:54 |只看該作者 |倒序?yàn)g覽
本帖最后由 baopbird2005 于 2015-11-19 14:25 編輯

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

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


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

  以下是整個(gè)的邏輯過(guò)程:



好了,所有這些都實(shí)現(xiàn)之后,就具備了做mp4點(diǎn)播系統(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 [報(bào)告]
發(fā)表于 2015-10-28 13:55 |只看該作者
這個(gè)僅僅提供一種思路

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

我在android 上做過(guò) 用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
您需要登錄后才可以回帖 登錄 | 注冊(cè)

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

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP