]> git.sesse.net Git - vlc/blobdiff - src/audio_output/common.c
* avi: no more segfault when we have 'max buffer allocation reached'
[vlc] / src / audio_output / common.c
index 57244641d8582ff2f3af6be5a2655b650d0aa113..e02813bb8c643d82b7602c9036fc9c7368dbe5cb 100644 (file)
@@ -2,7 +2,7 @@
  * common.c : audio output management of common data structures
  *****************************************************************************
  * Copyright (C) 2002 VideoLAN
- * $Id: common.c,v 1.13 2003/01/15 10:58:48 massiot Exp $
+ * $Id: common.c,v 1.16 2003/01/23 17:13:28 massiot Exp $
  *
  * Authors: Christophe Massiot <massiot@via.ecp.fr>
  *
@@ -59,6 +59,7 @@ aout_instance_t * __aout_New( vlc_object_t * p_parent )
     p_aout->i_nb_inputs = 0;
     p_aout->mixer.f_multiplier = 1.0;
     p_aout->mixer.b_error = 1;
+    p_aout->output.b_error = 1;
     p_aout->output.b_starving = 1;
 
     var_Create( p_aout, "intf-change", VLC_VAR_BOOL );
@@ -166,17 +167,26 @@ const char * aout_FormatPrintChannels( const audio_sample_format_t * p_format )
             return "Left";
         return "Right";
     case AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT:
-        if ( p_format->i_original_channels & AOUT_CHAN_DOLBYSTEREO )
-            return "Dolby";
-        else if ( p_format->i_original_channels & AOUT_CHAN_DUALMONO )
-            return "Dual-mono";
-        else if ( p_format->i_original_channels == AOUT_CHAN_CENTER )
-            return "Mono";
-        else if ( !(p_format->i_original_channels & AOUT_CHAN_RIGHT) )
-            return "Stereo/Left";
-        else if ( !(p_format->i_original_channels & AOUT_CHAN_LEFT) )
-            return "Stereo/Right";
-        return "Stereo";
+        if ( p_format->i_original_channels & AOUT_CHAN_REVERSESTEREO )
+        {
+            if ( p_format->i_original_channels & AOUT_CHAN_DOLBYSTEREO )
+                return "Dolby/Reverse";
+            return "Stereo/Reverse";
+        }
+        else
+        {
+            if ( p_format->i_original_channels & AOUT_CHAN_DOLBYSTEREO )
+                return "Dolby";
+            else if ( p_format->i_original_channels & AOUT_CHAN_DUALMONO )
+                return "Dual-mono";
+            else if ( p_format->i_original_channels == AOUT_CHAN_CENTER )
+                return "Stereo/Mono";
+            else if ( !(p_format->i_original_channels & AOUT_CHAN_RIGHT) )
+                return "Stereo/Left";
+            else if ( !(p_format->i_original_channels & AOUT_CHAN_LEFT) )
+                return "Stereo/Right";
+            return "Stereo";
+        }
     case AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT | AOUT_CHAN_CENTER:
         return "3F";
     case AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT | AOUT_CHAN_REARCENTER: