+ /* Stereo - create the audio-channels variable. */
+ var_Create( p_aout, "audio-channels",
+ VLC_VAR_INTEGER | VLC_VAR_HASCHOICE );
+ text.psz_string = _("Audio Channels");
+ var_Change( p_aout, "audio-channels", VLC_VAR_SETTEXT, &text, NULL );
+
+ if ( p_aout->output.output.i_original_channels & AOUT_CHAN_DOLBYSTEREO )
+ {
+ val.i_int = AOUT_VAR_CHAN_DOLBYS;
+ text.psz_string = _("Dolby Surround");
+ }
+ else
+ {
+ val.i_int = AOUT_VAR_CHAN_STEREO;
+ text.psz_string = _("Stereo");
+ }
+ var_Change( p_aout, "audio-channels", VLC_VAR_ADDCHOICE, &val, &text );
+ val.i_int = AOUT_VAR_CHAN_LEFT; text.psz_string = _("Left");
+ var_Change( p_aout, "audio-channels", VLC_VAR_ADDCHOICE, &val, &text );
+ val.i_int = AOUT_VAR_CHAN_RIGHT; text.psz_string = _("Right");
+ var_Change( p_aout, "audio-channels", VLC_VAR_ADDCHOICE, &val, &text );
+ val.i_int = AOUT_VAR_CHAN_RSTEREO; text.psz_string=_("Reverse stereo");
+ var_Change( p_aout, "audio-channels", VLC_VAR_ADDCHOICE, &val, &text );
+ if ( p_aout->output.output.i_original_channels & AOUT_CHAN_DUALMONO )
+ {
+ /* Go directly to the left channel. */
+ p_aout->output.output.i_original_channels = AOUT_CHAN_LEFT;
+ val.i_int = AOUT_VAR_CHAN_LEFT;
+ var_Set( p_aout, "audio-channels", val );
+ }
+ var_AddCallback( p_aout, "audio-channels", aout_ChannelsRestart,
+ NULL );