㈠ 請問SD卡中存儲的h264文件是什麼,有用么
應該是行車記錄儀的記錄視頻,說明你的導航同時兼有行車記錄功能,只是你沒有安裝前視頻頭而已,視頻記錄還存在,只是里邊沒有內容罷了-----H264是一種視頻存儲的格式(或者說壓縮方式)
㈡ 從一個H264的文件讀取數據,怎麼判斷滿一幀但從 00 00 00 01來判斷好像是錯的.
我也不是很懂,但是我對你的問題感興趣所以查了一下,就我所了解的是這樣:
H264文件的主要部分,是一堆"NAL單元"(NALU),NALU的分隔符是0000 0001 或 0000 01
每個NALU的頭部,會有一個位元組來標示該NALU的類型
一幀會由一個Access Unit (AU)構成,一個AU是由多個連續的NALU組成。
有一種NALU的類型,代表位元組為09,是AU的結尾符號。但是這個似乎不是強制的而是建議。如果使用了該標識符,每一幀都將由0000 0001 09 或 0000 0109結尾。
如果不使用該標識符,似乎要通過NALU的內容判斷兩個NALU是否屬於同一幀。
部分我看的參考資料:
http://blog.csdn.net/asddg67/article/details/4017251
http://bbs.csdn.net/topics/310188224
http://codesequoia.wordpress.com/2009/10/18/h-264-stream-structure/
http://forum.doom9.org/archive/index.php/t-145544.html
後面兩個英文資料可能要翻牆也可能不要
附件是完整的H264的specification,這是英文的,我沒找到中文的。第八章詳細的描述了解碼的規范。
㈢ H264 碼流結構詳解
H264 碼流實質上是一串經過特定規則組織的位元組序列,用於視頻文件解析和網路傳輸。它的結構復雜而有序,從大到小的層級包括視頻序列、幀、片組、片、宏塊、子塊和像素。
從功能角度看,H264 碼流分為視頻編碼層(VCL)和網路提取層(NAL)。VCL負責視頻數據的高效壓縮,通過三個步驟實現;而NAL則確保碼流適應網路傳輸,提供網路友好性,尤其通過NAL單元(NALU)來實現。
NALU由頭和身體兩部分構成,頭部僅佔1位元組,用於指示NALU類型,如重要的SPS和PPS,它們存儲圖像參數。NALU的身體部分包含原始數據比特流(SODB)和擴展位元組序列載荷(EBSP),其中可能需要插入防止競爭位元組以確保正確分割。
在碼流解析層面,H264碼流由連續的NALU組成,每個幀或I、P、B幀都代表一個NALU,可能還包括其他數據。編碼片的劃分有助於減少誤碼影響,共分五種類型,如I、P、B、SP和SI片。
關於NALU的邊界識別,H264採用Annex-B格式,通過Start Code標記每個NALU的開始,確保解碼器能准確識別和處理。深入理解這兩種格式的打包方式,有助於處理H264編碼的復雜性。
更多關於H264的詳細信息和學習資源,可以參考相關教程和博客,如音視頻高級開發教程和CNBlogs的文章。
㈣ h264是什麼視頻文件格式
H264是一種壓縮編碼方式 不是格式
H264壓縮後通常會以TS或者TP格式封裝,移動設備上通常是.MP4
相對於MPEG2來說 H264壓縮率更高 所以相同信息量下H264壓縮後體積更小 基本上一部高清電影如果是MPEG2壓縮需要100G左右二H264編碼方式下只需要25G左右。 相比MPG(MPEG1 VCD)來說壓縮率大的多,比之AVI來說也要強大很多
另外你說的其實不是一個概念 而且通常狀況下H264是用來壓縮高清視頻用的 AVI和MPG則不一定,等體積的情況下 H264模式壓縮出來的質量更好。