Chinaunix首页 | 论坛 | 博客
  • 博客访问: 233296
  • 博文数量: 50
  • 博客积分: 1793
  • 博客等级: 上尉
  • 技术积分: 393
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-22 23:28
文章分类
文章存档

2012年(7)

2011年(17)

2010年(26)

我的朋友

分类: LINUX

2011-11-07 16:08:02

AC3 (Dolby Digital) HeadersThis is just a quick reference to the frame header of an AC3 stream. There is no intention to fully explain AC3, for that you should read standard A/52a, available from (Advanced Television Systems Committee).

An AC3 frame has the following structure:
syncframe()
{
      syncinfo();
      bsi()
;
      for(blk=0, blk<6, blk++)
      {
            audblk();
      }
      auxdata();
      errorcheck()
;
} // end of syncframe Syncinfo

byte 0 byte 1 byte 2 byte 3 byte 4
7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0
Syncword - 0B77 CRC1 fscod frmsizcod
CRC1 applies to the first 5/8 of the frame

fscod sampling rate values

value sampling rate
00 48K
01 44.1K
10 32K
11 reserved

frmsizcod frame size code
value nominal bit rate 16-bit words per syncframe
Fs=32K Fs=44.1K Fs=48K
000000 32Kbps 96 69 64
000001 32Kbps 96 70 64
000010 40Kbps 120 87 80
000011 40Kbps 120 88 80
000100 48Kbps 144 104 96
000101 48Kbps 144 105 96
000110 56Kbps 168 121 112
000111 56Kbps 168 122 112
001000 64Kbps 192 139 128
001001 64Kbps 192 140 128
001010 80Kbps 240 174 160
001011 80Kbps 240 175 160
001100 96Kbps 288 208 192
001101 96Kbps 288 209 192
001110 112Kbps 336 243 224
001111 112Kbps 336 244 224
010000 128Kbps 384 278 256
010001 128Kbps 384 279 256
010010 160Kbps 480 348 320
010011 160Kbps 480 349 320
010100 192Kbps 576 417 384
010101 192Kbps 576 418 384
010110 224Kbps 672 487 448
010111 224Kbps 672 488 448
011000 256Kbps 768 557 512
011001 256Kbps 768 558 512
011010 320Kbps 960 696 640
011011 320Kbps 960 697 640
011100 384Kbps 1152 835 768
011101 384Kbps 1152 836 768
011110 448Kbps 1344 975 896
011111 448Kbps 1344 976 896
100000 512Kbps 1536 1114 1024
100001 512Kbps 1536 1115 1024
100010 576Kbps 1728 1253 1152
100011 576Kbps 1728 1254 1152
100100 640Kbps 1920 1393 1280
100101 640Kbps 1920 1394 1280
100110 to 111111 reserved
BSIThe BSI contains many conditionally included fields, so there is no fixed alignment.
standard (A52) variable bit length alternate (A52a) variable
bsid = 8 in this version 5 bsid = 6 in this version
3 no change
3 :
if((acmod & 0x1) && (acmod != 0x1)) /* 3 front channels */ {} 2 :
if(acmod & 0x4) /* if a surround channel exists */ {} 2 :
if(acmod == 0x2) /* if in 2/0 mode */ {} 2 :
1 :
5 :
1 :
if(compre) {} 8 :
1 :
if(langcode) {} 8 :
1 :
if(audioprodie) {} 5 :
if(audioprodie) {} 2 :
if(acmod == 0) /* 1+1 mode, so some items need a second value */   :
{   :
    5 :
    1 :
    if(compr2e) {} 8 :
    1 :
    if(langcod2e) {} 8 :
    1 :
    if(audioprodi2e) {} 5 :
    if(audioprodi2e) {} 2 :
}   :
1 :
1 no change
1 xbsi1e
if(timecod1e) {} 14 if(xbsi1e) {
(2 bits)
(3 bits)
(3 bits)
(3 bits)
(3 bits)
}
1 xbsi2e
if(timecod2e) {} 14 if(xbsi2e) {
(2 bits)
(2 bits)
(1 bit)
xbsi2 (8 bits - reserved for future expansion)
encinfo (1 bit - reserved for encoder use)
}
1 no change
if(addbsie) {} 6 :
if(addbsie) {} 8*addbsil no change

bsmod bitstream mode
bsmod acmod Type of Service
000 any main audio service: complete main (CM)
001 any main audio service: music and effects (ME)
010 any associated service: visually impaired (VI)
011 any associated service: hearing impaired (HI)
100 any associated service: dialog (D)
101 any associated service: commentary (C)
110 any associated service: emergency (E)
111 001 associated service: voice over (VO)
111 010 to 111 main audio service: karaoke

acmod audio coding mode
acmod audio coding mode nfchans Channel Array Order
000 1+1 2 Ch1, Ch2
001 1/0 1 C
010 2/0 2 L, R
011 3/0 3 L, C, R
100 2/1 3 L, R, S
101 3/1 4 L, C, R, S
110 2/2 4 L, R, SL, SR
111 3/2 5 L, C, R, SL, SR

cmixlev - center mix level (acmod 3, 5, 7)
value center mix level
00 0.707 (-3.0 dB)
01 0.595 (-4.5 dB)
10 0.500 (-6.0 dB)
11 reserved

surmixlev - surround mix level (acmod 4, 5, 6, 7)
value surround mix level
00 0.707 (-3.0 dB)
01 0.500 (-6.0 dB)
10 0
11 reserved

dsurmod - dolby surround mode (acmod 2)
value indication
00 not indicated
01 Not Dolby Surround encoded
10 Dolby Surround encoded
11 reserved

lfeon - Low frequency effects (LFE) on, 0=off, 1=on
dialnorm - Dialog normalization, average level, in -dB, of dialog channel with respect to digital 100%. The value of 0 is reserved, and decoders should use -31 dB
compre and compr - see section 7.7.2 of A52A
langcode and langcod - reserved
audproie - audio production information exists
mixlevel - mixing level, the absolute acoustic sound pressure level of an individual channel during the final mixing session. The peak mixing level is 80 + the 5-bit value dB SPL.

roomtyp - The type and calibration of the mixing room used for the final mixing session.

roomtyp Type of Mixing Room
00 not indicated
01 large room, X curve monitor
10 small room, flat monitor
11 reserved

dialnorm2, compr2e, compr2, langcod2e, langcod2, audprodi2e, mixlevel2, roomtyp2 - same as above, but for Ch2 of 1+1 mode.
copyrightb - copyright bit, 0=not protected by copyright, 1=protected by copyright.
origbs - original bit stream, 1=original, 0=copy

timecod1e, timecod1 - most significant 14 bits of time code, as follows:

13 12 11 10 9 8 7 6 5 4 3 2 1 0
hours (0-23) minutes (0-59) seconds/8 (0-7)

timecod2e, timecod2 - least significant 14 bits of time code, as follows:
13 12 11 10 9 8 7 6 5 4 3 2 1 0
seconds mod 8 (0-7) frames (0-29) 1/64 frames (0-63)

addbsie - flag for presence of additional bit stream information.
addbsil - length in bytes of additional bit stream information.
addbsi - additional bit stream information, up to 64 bytes. Fields of alternate (A52a) BSI

dmixmod - preferred stereo downmix mode
dmixmod Indication
00 not indicated
01 Lt/Rt downmix preferred
10 Lo/Ro downmix preferred
11 reserved

ltrtcmixlev - Lt/Rt Center Mix Level
ltrtsurmixlev - Lt/Rt Surround Mix Level
lorocmixlev - Lo/Ro Center Mix Level
lorosurmixlev - Lo/Ro Surround Mix Level
value level
000 1.414 (+3.0 dB)
001 1.189 (+1.5 dB)
010 1.000 (0.0 dB)
011 0.841 (-1.5 dB)
100 0.707 (-3.0 dB)
101 0.595 (-4.5 dB)
110 0.500 (-6.0 dB)
111 0.000 (-inf dB)

dsurexmod - Dolby Surround EX Mode
dsurexmod Indication
00 not indicated
01 Not Dolby Surround EX encoded
10 Dolby Surround EX encoded
11 reserved

dheadphonmod - Dolby Headphone Mode
dheadphonmod Indication
00 not indicated
01 Not Dolby Headphone encoded
10 Dolby Headphone encoded
11 reserved

adconvtyp - A/D Converter zType
adconvtyp Indication
0 Standard
1 HDCD

阅读(2636) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~