linux利用asound控制音量
来源:互联网 发布:js旋转的环形菜单动画 编辑:程序博客网 时间:2024/05/25 08:13
#include <stdio.h>#include <alsa/asoundlib.h>#include <stdlib.h>#include <string.h>int main(int argc ,char **argv){ int volume=99; if(argc>1) volume=atoi(argv[1]); if(volume<0) volume=0; if(volume>100) volume=100; int unmute, chn; long al, ar; snd_mixer_t *mixer; snd_mixer_elem_t *master_element; snd_mixer_open(&mixer, 0); snd_mixer_attach(mixer, "default"); snd_mixer_selem_register(mixer, NULL, NULL); snd_mixer_load(mixer); /* 取得第一個 element,也就是 Master */ master_element = snd_mixer_first_elem(mixer); /* 設定音量的範圍 0 ~ 100 */ snd_mixer_selem_set_playback_volume_range(master_element, 0, 100); /* 取得 Master 是否靜音 */ snd_mixer_selem_get_playback_switch(master_element, 0, &unmute); snd_mixer_selem_set_playback_volume(master_element, SND_MIXER_SCHN_FRONT_LEFT, volume); snd_mixer_selem_set_playback_volume(master_element, SND_MIXER_SCHN_FRONT_RIGHT, volume); /* 將 Master 切換為靜音 */ for (chn=0;chn<=SND_MIXER_SCHN_LAST;chn++) { snd_mixer_selem_set_playback_switch(master_element, chn, 0); } /* 將 Master 切換為非靜音 */ for (chn=0;chn<=SND_MIXER_SCHN_LAST;chn++) { snd_mixer_selem_set_playback_switch(master_element, chn, 1); } return 0;}
gcc voice.c -o setvoice -lasound
0 0
- linux利用asound控制音量
- linux 控制音量大小
- 音量控制
- 【Cocos2dx】利用音量螺旋控件控制血量条
- Linux音频配置文件asound.conf的了解
- linux环境下 利用QT 开发音量键
- 一个利用windows api控制放音音量和录音麦克风音量实现类(c++代码)
- c#音量控制
- [翻译]VISTA音量控制
- 12.1.7 控制音量
- VISTA音量控制
- c#里音量控制
- c#里音量控制
- VC控制电脑音量
- as2音量控制
- C# 控制PPC音量
- as3音量控制
- 混音器音量控制
- zookeeper学习笔记(二) —— 应用场景概览
- 华为机试-单词倒排
- 如何选择可靠的实时操作系统
- 剑指offer练习(一)
- HDSF-DFSOutputSteam
- linux利用asound控制音量
- android studio环境下上传新项目到SVN
- 数据结构知识框图
- 操作系统——内存管理(四)
- uboot之logo显示
- CPU密集型和I/O密集型
- 微信分享自定义配置问题
- 线程异步
- codeforces 291 E. Tree-String Problem (dfs+kmp)