我正在從樹莓派上的相機讀取H.264流。我試圖通過websockets將它傳遞給Broadway以在網頁中呈現。H.264解碼無法解析異常幀頭
該流包含NAL單元,並且我在[0,0,0,1]
開始前綴代碼上對它進行分塊,以分別發送並解碼NAL單元。我認爲這很好,但百老匯無法解碼我最終的結果。
挖掘到the parsing code I've based this on不過,它似乎在期待第5字節(開始前綴碼後,直中)爲:
- 0x65 - I幀
- 的0x41 - P幀
- ×67 - 一個SPS框架
- 0x68 - 一個PPS框架
我見過很多這樣提過的其他地方。所有我經歷了,雖然來的單位似乎開始(按順序):
- ×27 0x64(第一部)
- 0×28 0xEE(第二單元)
- 0x25均爲0x88(第三單元,然後間歇後上)
- 爲0x21 0x9A執行(每一個其他的流單元)
做這些報頭在H.264碼流是什麼意思?他們是否提出了一些我需要做的事情來符合百老匯的預期?
(如果完整的代碼會爲了更好的理解是有用的,看到https://github.com/pimterry/pi-cam/tree/d801de9b)
瞭解NALU的第一個字節[here](http://yumichan.net/video-processing/video-compression/introduction-to-h264-nal-unit/) –