X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Faudio_output%2Foss.c;h=6ee0688655bd63e73786d86170262f0b672fc5da;hb=78d87996ccb92d1dc91c9987685f976ed3be08a6;hp=ee21df3f1db4743d0086328e9a970033b848df16;hpb=0597403277c49d3fc23da19fb6f6954e984bae86;p=vlc diff --git a/modules/audio_output/oss.c b/modules/audio_output/oss.c index ee21df3f1d..6ee0688655 100644 --- a/modules/audio_output/oss.c +++ b/modules/audio_output/oss.c @@ -51,8 +51,6 @@ # include #elif defined( HAVE_SYS_SOUNDCARD_H ) # include -#elif defined( HAVE_MACHINE_SOUNDCARD_H ) -# include #endif /* Patches for ignorant OSS versions */ @@ -113,7 +111,7 @@ vlc_module_begin () set_category( CAT_AUDIO ) set_subcategory( SUBCAT_AUDIO_AOUT ) add_file( "oss-audio-device", "/dev/dsp", aout_FindAndRestart, - N_("OSS DSP device"), NULL, false ); + N_("OSS DSP device"), NULL, false ) add_deprecated_alias( "dspdev" ) /* deprecated since 0.9.3 */ add_bool( "oss-buggy", 0, NULL, BUGGY_TEXT, BUGGY_LONGTEXT, true ) @@ -170,7 +168,7 @@ static void Probe( aout_instance_t * p_aout ) | AOUT_CHAN_LFE)) ) { val.i_int = AOUT_VAR_5_1; - text.psz_string = "5.1"; + text.psz_string = (char*) "5.1"; var_Change( p_aout, "audio-device", VLC_VAR_ADDCHOICE, &val, &text ); } @@ -181,7 +179,7 @@ static void Probe( aout_instance_t * p_aout ) | AOUT_CHAN_REARLEFT | AOUT_CHAN_REARRIGHT)) ) { val.i_int = AOUT_VAR_2F2R; - text.psz_string = N_("2 Front 2 Rear"); + text.psz_string = _("2 Front 2 Rear"); var_Change( p_aout, "audio-device", VLC_VAR_ADDCHOICE, &val, &text ); } @@ -205,7 +203,7 @@ static void Probe( aout_instance_t * p_aout ) && i_nb_channels == 2 ) { val.i_int = AOUT_VAR_STEREO; - text.psz_string = N_("Stereo"); + text.psz_string = _("Stereo"); var_Change( p_aout, "audio-device", VLC_VAR_ADDCHOICE, &val, &text ); } @@ -225,7 +223,7 @@ static void Probe( aout_instance_t * p_aout ) && i_nb_channels == 1 ) { val.i_int = AOUT_VAR_MONO; - text.psz_string = N_("Mono"); + text.psz_string = _("Mono"); var_Change( p_aout, "audio-device", VLC_VAR_ADDCHOICE, &val, &text ); if ( p_aout->output.output.i_physical_channels == AOUT_CHAN_CENTER ) { @@ -249,7 +247,7 @@ static void Probe( aout_instance_t * p_aout ) && i_format == AFMT_AC3 ) { val.i_int = AOUT_VAR_SPDIF; - text.psz_string = N_("A/52 over S/PDIF"); + text.psz_string = _("A/52 over S/PDIF"); var_Change( p_aout, "audio-device", VLC_VAR_ADDCHOICE, &val, &text ); if( config_GetInt( p_aout, "spdif" ) ) @@ -321,17 +319,18 @@ static int Open( vlc_object_t *p_this ) if ( var_Get( p_aout, "audio-device", &val ) < 0 ) { /* Probe() has failed. */ + close( p_sys->i_fd ); free( p_sys ); return VLC_EGENERIC; } if ( val.i_int == AOUT_VAR_SPDIF ) { - p_aout->output.output.i_format = VLC_FOURCC('s','p','d','i'); + p_aout->output.output.i_format = VLC_CODEC_SPDIFL; } else if ( val.i_int == AOUT_VAR_5_1 ) { - p_aout->output.output.i_format = AOUT_FMT_S16_NE; + p_aout->output.output.i_format = VLC_CODEC_S16N; p_aout->output.output.i_physical_channels = AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT | AOUT_CHAN_CENTER | AOUT_CHAN_REARLEFT | AOUT_CHAN_REARRIGHT @@ -339,32 +338,32 @@ static int Open( vlc_object_t *p_this ) } else if ( val.i_int == AOUT_VAR_2F2R ) { - p_aout->output.output.i_format = AOUT_FMT_S16_NE; + p_aout->output.output.i_format = VLC_CODEC_S16N; p_aout->output.output.i_physical_channels = AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT | AOUT_CHAN_REARLEFT | AOUT_CHAN_REARRIGHT; } else if ( val.i_int == AOUT_VAR_STEREO ) { - p_aout->output.output.i_format = AOUT_FMT_S16_NE; + p_aout->output.output.i_format = VLC_CODEC_S16N; p_aout->output.output.i_physical_channels = AOUT_CHAN_LEFT | AOUT_CHAN_RIGHT; } else if ( val.i_int == AOUT_VAR_MONO ) { - p_aout->output.output.i_format = AOUT_FMT_S16_NE; + p_aout->output.output.i_format = VLC_CODEC_S16N; p_aout->output.output.i_physical_channels = AOUT_CHAN_CENTER; } else { /* This should not happen ! */ msg_Err( p_aout, "internal: can't find audio-device (%i)", val.i_int ); + close( p_sys->i_fd ); free( p_sys ); return VLC_EGENERIC; } - val.b_bool = true; - var_Set( p_aout, "intf-change", val ); + var_SetBool( p_aout, "intf-change", true ); /* Reset the DSP device */ if( ioctl( p_sys->i_fd, SNDCTL_DSP_RESET, NULL ) < 0 ) @@ -389,7 +388,7 @@ static int Open( vlc_object_t *p_this ) return VLC_EGENERIC; } - p_aout->output.output.i_format = VLC_FOURCC('s','p','d','i'); + p_aout->output.output.i_format = VLC_CODEC_SPDIFL; 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; @@ -416,22 +415,22 @@ static int Open( vlc_object_t *p_this ) switch ( i_format ) { case AFMT_U8: - p_aout->output.output.i_format = VLC_FOURCC('u','8',' ',' '); + p_aout->output.output.i_format = VLC_CODEC_U8; break; case AFMT_S8: - p_aout->output.output.i_format = VLC_FOURCC('s','8',' ',' '); + p_aout->output.output.i_format = VLC_CODEC_S8; break; case AFMT_U16_LE: - p_aout->output.output.i_format = VLC_FOURCC('u','1','6','l'); + p_aout->output.output.i_format = VLC_CODEC_U16L; break; case AFMT_S16_LE: - p_aout->output.output.i_format = VLC_FOURCC('s','1','6','l'); + p_aout->output.output.i_format = VLC_CODEC_S16L; break; case AFMT_U16_BE: - p_aout->output.output.i_format = VLC_FOURCC('u','1','6','b'); + p_aout->output.output.i_format = VLC_CODEC_U16B; break; case AFMT_S16_BE: - p_aout->output.output.i_format = VLC_FOURCC('s','1','6','b'); + p_aout->output.output.i_format = VLC_CODEC_S16B; break; default: msg_Err( p_aout, "OSS fell back to an unknown format (%d)", @@ -599,7 +598,7 @@ static void* OSSThread( vlc_object_t *p_this ) int i_tmp, i_size; uint8_t * p_bytes; - if ( p_aout->output.output.i_format != VLC_FOURCC('s','p','d','i') ) + if ( p_aout->output.output.i_format != VLC_CODEC_SPDIFL ) { mtime_t buffered = BufferDuration( p_aout );