-/*****************************************************************************
- * Probe: probe the audio device for available formats and channels
- *****************************************************************************/
-static void Probe( audio_output_t * p_aout )
-{
- struct aout_sys_t * p_sys = p_aout->sys;
- vlc_value_t val, text;
- int i_format, i_nb_channels;
-
- var_Create( p_aout, "audio-device", VLC_VAR_INTEGER | VLC_VAR_HASCHOICE );
- text.psz_string = _("Audio Device");
- var_Change( p_aout, "audio-device", VLC_VAR_SETTEXT, &text, NULL );
-
- /* Test for multi-channel. */
-#ifdef SNDCTL_DSP_GETCHANNELMASK
- if ( aout_FormatNbChannels( &p_aout->format ) > 2 )
- {
- /* Check that the device supports this. */
-
- int i_chanmask;
-
- /* Reset all. */
- i_format = AFMT_S16_NE;
- if( ioctl( p_sys->i_fd, SNDCTL_DSP_RESET, NULL ) < 0 ||
- ioctl( p_sys->i_fd, SNDCTL_DSP_SETFMT, &i_format ) < 0 )
- {
- msg_Err( p_aout, "cannot reset OSS audio device" );
- var_Destroy( p_aout, "audio-device" );
- return;
- }
-
- if ( ioctl( p_sys->i_fd, SNDCTL_DSP_GETCHANNELMASK,
- &i_chanmask ) == 0 )
- {
- if ( !(i_chanmask & DSP_BIND_FRONT) )
- {
- msg_Err( p_aout, "no front channels! (%x)",
- i_chanmask );
- return;
- }
+static int TimeGet (audio_output_t *, mtime_t *);
+static void Play (audio_output_t *, block_t *);
+static void Pause (audio_output_t *, bool, mtime_t);
+static void Flush (audio_output_t *, bool);
+static int VolumeSync (audio_output_t *);