Mercurial > mplayer.hg
comparison dec_audio.c @ 4423:ed500b952d2d
possible AC3 fix, by Marcus Blomenkamp <Marcus.Blomenkamp@epost.de>
author | arpi |
---|---|
date | Wed, 30 Jan 2002 22:05:46 +0000 |
parents | c92c23a42e91 |
children | e69bed07cb27 |
comparison
equal
deleted
inserted
replaced
4422:3a46354aab56 | 4423:ed500b952d2d |
---|---|
318 | 318 |
319 int init_audio(sh_audio_t *sh_audio){ | 319 int init_audio(sh_audio_t *sh_audio){ |
320 int driver=sh_audio->codec->driver; | 320 int driver=sh_audio->codec->driver; |
321 | 321 |
322 sh_audio->samplesize=2; | 322 sh_audio->samplesize=2; |
323 #if WORDS_BIGENDIAN | 323 #ifdef WORDS_BIGENDIAN |
324 sh_audio->sample_format=AFMT_S16_BE; | 324 sh_audio->sample_format=AFMT_S16_BE; |
325 #else | 325 #else |
326 sh_audio->sample_format=AFMT_S16_LE; | 326 sh_audio->sample_format=AFMT_S16_LE; |
327 #endif | 327 #endif |
328 sh_audio->samplerate=0; | 328 sh_audio->samplerate=0; |
403 sh_audio->audio_out_minsize=audio_output_channels*2*256*6; | 403 sh_audio->audio_out_minsize=audio_output_channels*2*256*6; |
404 break; | 404 break; |
405 case AFM_HWAC3: | 405 case AFM_HWAC3: |
406 // Dolby AC3 audio: | 406 // Dolby AC3 audio: |
407 sh_audio->audio_out_minsize=4*256*6; | 407 sh_audio->audio_out_minsize=4*256*6; |
408 sh_audio->sample_format = AFMT_AC3; | 408 // sh_audio->sample_format = AFMT_AC3; |
409 sh_audio->channels=1; | 409 // sh_audio->sample_format = AFMT_S16_LE; |
410 sh_audio->channels=2; | |
410 break; | 411 break; |
411 case AFM_GSM: | 412 case AFM_GSM: |
412 // MS-GSM audio codec: | 413 // MS-GSM audio codec: |
413 sh_audio->audio_out_minsize=4*320; | 414 sh_audio->audio_out_minsize=4*320; |
414 break; | 415 break; |
628 //sh_audio->ac3_frame=malloc(6144); | 629 //sh_audio->ac3_frame=malloc(6144); |
629 //sh_audio->o_bps=sh_audio->i_bps; // XXX FIXME!!! XXX | 630 //sh_audio->o_bps=sh_audio->i_bps; // XXX FIXME!!! XXX |
630 | 631 |
631 // o_bps is calculated from samplesize*channels*samplerate | 632 // o_bps is calculated from samplesize*channels*samplerate |
632 // a single ac3 frame is always translated to 6144 byte packet. (zero padding) | 633 // a single ac3 frame is always translated to 6144 byte packet. (zero padding) |
633 sh_audio->channels=1; | 634 sh_audio->channels=2; |
634 sh_audio->samplesize=4; // 1*4*(6*256) = 6144 (very TRICKY!) | 635 sh_audio->samplesize=2; // 2*2*(6*256) = 6144 (very TRICKY!) |
635 | 636 |
636 break; | 637 break; |
637 } | 638 } |
638 case AFM_ALAW: { | 639 case AFM_ALAW: { |
639 // aLaw audio codec: | 640 // aLaw audio codec: |