2015-10-19 232 views
0

我通過Android上的UDP接收h.264數據。它看起來像一個接收NAL單位。 我想要做的是提取 原始MPEG包,然後我可以推送給我的播放器。我使用ijkplayer(基於ffmpeg構建),如果我按我收到的完全相同的數據,它不起作用。h.264 udp流解碼

我的問題是:如何提取原始h.264數據包。這個流是否包裹在另一個協議中?或者是否有可能,流被破壞,一些數據丟失?

數據 - 縮短...爲了簡潔

0 0 0 1 97 0 -96 -101 -7 -117 55 82 1 9 -100 -107 -77 -20 14 -120 65 ...

0 0 0 1 97 0 80 38 77 -2 57 -1 -39 -20 19 -31 86 -47 11 -51 122 -82 ...

0 0 0 1 97 0 120 38 -2 77 -1 -118 7 -97 -80 -29 -2 -79 126 -25 47 3 ...

0 0 0 1 103 100 0 40 -84 -76 5 1 -19 -128 -86 64 0 0 3 0 -128 0 ...

0 0 0 1 104 -18 60 -80

0 0 0 1 97 0 -96 -102 25 51 -1 11 93 79 -78 94 -70 23 120 ...

0 0 0 1 97 0 80 38 -122 76 -1 16 80 -100 -84 -18 116 64 ...

0 0 0 1 97 0 120 38 -122 76 -1 26 -19 80 -103 -74 -31 44 ...

0 0 0 1 97 -102 57 51 -1 0 20 110 -37 37 -77 52 113 ...

回答

0

我發現在另一個論壇上,我需要等待「0 0 0 1 9」,它標誌着Access單元的開始,然後我可以將數據提供給MediaCodec。

0

0 0 0 1是H.264開始碼。這是「原始」的。 (沒有這樣的想法作爲「MPEG包」)