第七季1:MP4文件格式解析
生活随笔
收集整理的這篇文章主要介紹了
第七季1:MP4文件格式解析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
以下內容源于朱有鵬課程,如有侵權,請告知刪除。
本季內容
(1)將編解碼得到的視頻打包成mp4格式并存儲到TF卡
- MP4的組織形式和box解析
- 移植和使用mp4v2開源庫來打包MP4
- 進一步研究MP4解包播放和mp4v2源碼
- 自己編程進行MP4的打包、解包、分割等。
(2)解決調試相關的問題
- 添加網絡telnet調試
- 海思proc文件系統調試接口
一、視頻文件概述
(1)視頻文件的本質:記錄壓縮后的視頻幀并且能被播放器還原解碼播放
- 比如快遞一件東西,h.264負責怎樣制造這件東西,而MP4負責怎樣運送這件東西。
(2)視頻文件的關鍵:高效率地記錄信息、兼容性
- 高效率地記錄信息:同一件東西,怎樣運送才最快?(壓縮的時間、空間等等)
- 兼容性:這個快遞公司可以運送哪些東西?(支持哪些文件格式)
- 其中MP4是運送的最快、可運物品最多的物流公司。所以很多人用它。
(3)視頻文件的信息:索引信息、有效信息
- 有效信息,即視頻文件里面真正與視頻、音頻有關的數據:I,P,B幀。
- 索引信息,可以增加容錯性。
二、MP4格式概述
(1)MP4由MP3升級而來,包含video和audio在內
(2)MP4是h.264的最主流打包格式
- h.264的視頻流最常用的打包格式是MP4
(3)MP4文件內部采用網絡字節序(大端模式)?
- 因為最初發明MP4也是為了在網絡中使用
三、使用MP4Info工具來分析MP4文件格式
1、關于MP4文件格式分析的網絡資源
- https://www.cnblogs.com/ranson7zop/p/7889272.html
- 微信推送的文章
- 簡書上的介紹文章
2、備注
?(1)winhex可以打開二進制文件。
(2)可以用notepad打開mp4文件修改里面的二進制數據。
- 通過插件菜單選項進入view Hex模式可以編輯數據。
- 比如通過修改第二組四個字節(字符編碼為ftype)的數據,mp4播放器識別不了。但VLC還是能播放,其容錯性還是可以的,因為它是研發使用的工具而不是正式軟件產品。
3、分析過程【簡述,詳細見參考第一篇】
(1)MP4Info工具的使用【1111】
- 文件過大的話會打開失敗的。這里用一個大小合適的測試視頻【1111】。
(2)分析過程
A、整體印象
1)MP4文件由各種不同類型的box組成,打包和解包時都是以box為單位的。
- 每個box有類型、大小。
2)每個box的格式
- 開頭的四個字節:表明該box的大小。這樣就可以實現所有box的定位。
- 下一組的四個字節:表明該box的類型。
B、ftyp類型box
- MP4文件的第一個box是ftyp類型的box。
- 整個文件有且僅有一個ftyp類型的box。
D、moov類型的box
- (一般情況下)MP4文件的第二個box是moov類型的box。
- 整個文件有且僅有一個moov類型的box。
- “moov”中會包含1個“mvhd”和若干個“trak”。其中“mvhd”為header box,一般作為“moov”的第一個子box出現。“trak”包含了一個track的相關信息,是一個container box。
這里僅作一個印象分析,更多詳細內容見博:https://www.cnblogs.com/ranson7zop/p/7889272.html
總結
以上是生活随笔為你收集整理的第七季1:MP4文件格式解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: eterm 350转443转接器
- 下一篇: Mac下Idea快捷键总结(不断更新)