TA的每日心情 | 奋斗 2020-5-6 08:48 |
---|
签到天数: 140 天 [LV.7]常住居民III
|
我一直疑问为什么有些视频解码时显示格式是:H264,大部分又是:AVC14 @# ?- A: K1 L+ P8 Q2 x
我在搜索编程资料时在微软的msdn上发现的:
! K; ^. i1 B2 C- L+ Z. g5 m s 原文:http://msdn.microsoft.com/en-us/library/dd757808(v=vs.85).aspx" o2 g, O0 `: o/ h
FOURCC:AVC1 描述:H.264 bitstream without start codes.1 m. B& ?. \4 D5 V2 {
FOURCC:H264 描述:H.264 bitstream with start codes.
6 B, T7 R" K8 f. I5 d' ^/ B @6 L2 e e
; ?/ @3 h5 O' O8 u% m5 @ H.264 Bitstream with Start Codes
/ r3 U- r& I1 x" @
5 S* F$ [" l5 M" v6 Z H.264 bitstreams that are transmitted over the air, or contained in MPEG-2 program or transport streams, or recorded on HD-DVD, are formatted as described in Annex B of ITU-T Rec. H.264. According to this specification, the bitstream consists of a sequence of network abstraction layer units (NALUs), each of which is prefixed with a start code equal to 0x000001 or 0x00000001., y/ y5 J9 @, M& T. A, `" c) o8 B
这段话的大致意思是:带有开始码的H.264视频一般是用于无线发射、有线广播或者HD-DVD中的。这些数据流的开始都有一个开始码:0x000001 或者 0x00000001.5 N7 e4 h$ H r6 m$ R6 T, P
9 i1 w/ F' d9 T0 a! f
3 C1 E+ c P6 `5 F H.264 Bitstream Without Start Codes
0 |, R& ^, }+ }5 P; c/ X9 X+ ?6 i+ {4 a/ m, q4 s V4 s% x
The MP4 container format stores H.264 data without start codes. Instead, each NALU is prefixed by a length field, which gives the length of the NALU in bytes. The size of the length field can vary, but is typically 1, 2, or 4 bytes.7 {) I1 V* ~( c. @9 E
这段话的大致意思是:没有开始码的H.264视频主要是存储在MP4格式的文件中的。它的数据流的开始是1、2或者4个字节表示长度数据。2 l; |: s- L3 P! K0 k
原文中的"NALU"简单说是H.264格式中的最基本的单元,是一个数据包。; \7 a0 p1 @& ?$ L( w2 y
|
|