【问题标题】:ALSA: How can I send audio through both headphone and speakerALSA:如何通过耳机和扬声器发送音频
【发布时间】:2013-01-10 03:33:43
【问题描述】:

我需要在运行时控制音频输出设备:

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

我的应用程序在运行时决定在上述组合之间切换。我应该为上述目的使用什么 ALSA API。

(我使用 Linux 3.0、ALSA、C、TI tlv320aic3x、ARM)。

【问题讨论】:

  • 上传您的完整代码将对未来的访问者有所帮助。

标签: c++ c linux audio alsa


【解决方案1】:

你可以使用这个:

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

which sets value of playback volume control of a mixer simple element.

这是source code example

        /* 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);

【讨论】:

    猜你喜欢
    • 2012-04-30
    • 1970-01-01
    • 1970-01-01
    • 2015-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多