-vlc_module_begin();
- add_category_hint( N_("ALSA"), NULL, VLC_FALSE );
- add_string( "alsadev", DEFAULT_ALSA_DEVICE, aout_FindAndRestart,
- N_("ALSA device name"), NULL, VLC_FALSE );
- set_description( _("ALSA audio output") );
- set_capability( "audio output", 150 );
- set_callbacks( Open, Close );
-vlc_module_end();
-
-/*****************************************************************************
- * Probe: probe the audio device for available formats and channels
- *****************************************************************************/
-static void Probe( aout_instance_t * p_aout,
- const char * psz_device, const char * psz_iec_device,
- int *pi_snd_pcm_format )
-{
- struct aout_sys_t * p_sys = p_aout->output.p_sys;
- vlc_value_t val, text;
- int i_ret;
-
- 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 );
-
- /* We'll open the audio device in non blocking mode so we can just exit
- * when it is already in use, but for the real stuff we'll still use
- * the blocking mode */
-
- /* Now test linear PCM capabilities */
- if ( !(i_ret = snd_pcm_open( &p_sys->p_snd_pcm, psz_device,
- SND_PCM_STREAM_PLAYBACK,
- SND_PCM_NONBLOCK ) ) )
- {
- int i_channels;
- snd_pcm_hw_params_t * p_hw;
- snd_pcm_hw_params_alloca (&p_hw);
+static const char *const ppsz_devices[] = {
+ "default", "plug:front",
+ "plug:side", "plug:rear", "plug:center_lfe",
+ "plug:surround40", "plug:surround41",
+ "plug:surround50", "plug:surround51",
+ "plug:surround71",
+ "hdmi", "iec958",
+};
+static const char *const ppsz_devices_text[] = {
+ N_("Default"), N_("Front speakers"),
+ N_("Side speakers"), N_("Rear speakers"), N_("Center and subwoofer"),
+ N_("Surround 4.0"), N_("Surround 4.1"),
+ N_("Surround 5.0"), N_("Surround 5.1"),
+ N_("Surround 7.1"),
+ N_("HDMI"), N_("S/PDIF"),
+};