]> git.sesse.net Git - vlc/commitdiff
Fixed a bug in the OSS output I introduced yesterday.
authorChristophe Massiot <massiot@videolan.org>
Tue, 1 Oct 2002 22:34:43 +0000 (22:34 +0000)
committerChristophe Massiot <massiot@videolan.org>
Tue, 1 Oct 2002 22:34:43 +0000 (22:34 +0000)
modules/audio_output/oss.c

index d28f88deace6b69dc328d67f29680af280ff6c25..22e980e146cac62896a3a53de3167e3335584484 100644 (file)
@@ -2,7 +2,7 @@
  * oss.c : OSS /dev/dsp module for vlc
  *****************************************************************************
  * Copyright (C) 2000-2002 VideoLAN
- * $Id: oss.c,v 1.27 2002/09/30 21:32:32 massiot Exp $
+ * $Id: oss.c,v 1.28 2002/10/01 22:34:43 massiot Exp $
  *
  * Authors: Michel Kaempf <maxx@via.ecp.fr>
  *          Samuel Hocevar <sam@zoy.org>
@@ -160,7 +160,7 @@ static int Open( vlc_object_t *p_this )
     /* Set the output format */
     if ( p_aout->output.output.i_format == VLC_FOURCC('s','p','d','i') )
     {
-        i_format = VLC_FOURCC('s','p','d','i');
+        i_format = AFMT_AC3;
         p_aout->output.i_nb_samples = A52_FRAME_NB;
         p_aout->output.output.i_bytes_per_frame = AOUT_SPDIF_SIZE;
         p_aout->output.output.i_frame_length = A52_FRAME_NB;
@@ -169,7 +169,8 @@ static int Open( vlc_object_t *p_this )
     }
     else
     {
-        p_aout->output.output.i_format = i_format = AOUT_FMT_S16_NE;
+        p_aout->output.output.i_format = AOUT_FMT_S16_NE;
+        i_format = AFMT_S16_NE;
         p_aout->output.i_nb_samples = FRAME_SIZE;
 
         aout_VolumeSoftInit( p_aout );
@@ -178,11 +179,12 @@ static int Open( vlc_object_t *p_this )
     if( ioctl( p_sys->i_fd, SNDCTL_DSP_SETFMT, &i_format ) < 0
          || i_format != p_aout->output.output.i_format )
     {
-        if ( i_format == VLC_FOURCC('s','p','d','i') )
+        if ( i_format == AFMT_AC3 )
         {
             /* Retry with S16 */
             msg_Warn( p_aout, "cannot set audio output format (%i)", i_format );
-            p_aout->output.output.i_format = i_format = AOUT_FMT_S16_NE;
+            p_aout->output.output.i_format = AOUT_FMT_S16_NE;
+            i_format = AFMT_S16_NE;
             p_aout->output.i_nb_samples = FRAME_SIZE;
             if( ioctl( p_sys->i_fd, SNDCTL_DSP_SETFMT, &i_format ) < 0
                  || i_format != p_aout->output.output.i_format )