[Mplayer-cvslog] CVS: main dec_audio.c,1.75,1.76

Arpi of Ize arpi at mplayer.dev.hu
Fri Jan 4 00:14:20 CET 2002


Update of /cvsroot/mplayer/main
In directory mplayer:/var/tmp.root/cvs-serv16603

Modified Files:
	dec_audio.c 
Log Message:
iterated a52 channel setup

Index: dec_audio.c
===================================================================
RCS file: /cvsroot/mplayer/main/dec_audio.c,v
retrieving revision 1.75
retrieving revision 1.76
diff -u -r1.75 -r1.76
--- dec_audio.c	2 Jan 2002 17:11:49 -0000	1.75
+++ dec_audio.c	3 Jan 2002 23:14:13 -0000	1.76
@@ -563,10 +563,12 @@
 	driver=0;break;
   }
   // 'a52 cannot upmix' hotfix:
-  sh_audio->channels=a52_printinfo(sh_audio);
-  if(audio_output_channels<sh_audio->channels)
-      sh_audio->channels=audio_output_channels;
+  a52_printinfo(sh_audio);
+//  if(audio_output_channels<sh_audio->channels)
+//      sh_audio->channels=audio_output_channels;
   // channels setup:
+  sh_audio->channels=audio_output_channels;
+while(sh_audio->channels>0){
   switch(sh_audio->channels){
 	    case 1: a52_flags=A52_MONO; break;
 //	    case 2: a52_flags=A52_STEREO; break;
@@ -586,7 +588,10 @@
   }
   mp_msg(MSGT_DECAUDIO,MSGL_V,"A52 flags after a52_frame: 0x%X\n",flags);
   // frame decoded, let's init resampler:
-  if(!a52_resample_init(a52_accel,flags,sh_audio->channels)){
+  if(a52_resample_init(a52_accel,flags,sh_audio->channels)) break;
+  --sh_audio->channels; // try to decrease no. of channels
+}
+  if(sh_audio->channels<=0){
     mp_msg(MSGT_DECAUDIO,MSGL_ERR,"a52: no resampler. try different channel setup!\n");
     driver=0;break;
   }




More information about the MPlayer-cvslog mailing list