2

実行時にオーディオ出力デバイスを制御する必要があります:

1) Main Speaker only
2) Headphone Only
3) Headphone + Main Speaker both together

私のアプリケーションは、実行時に上記の組み合わせを切り替える決定をします。上記の目的でどのALSAAPIを使用する必要がありますか。

(私はLinux 3.0、ALSA、C、TI tlv320aic3x、ARMを使用しています)。

4

1 に答える 1

2

あなたはこれを使うことができます:

int snd_mixer_selem_set_playback_volume(snd_mixer_elem_t *elem,
snd_mixer_selem_channel_id_t channel, long value)       

ミキサーシンプルエレメントの再生音量コントロールの値を設定します。

これがソースコードの例です:

        /* Set new volume */
         if (snd_mixer_selem_set_playback_volume(elem,
             SND_MIXER_SCHN_FRONT_LEFT, left_volume) != 0)
                 return (-1);
         if (snd_mixer_selem_set_playback_volume(elem,
             SND_MIXER_SCHN_FRONT_RIGHT, right_volume) != 0)
                 return (-1);
于 2013-01-26T07:10:14.573 に答える