1. mac小机调音17级
_usb_audio_vol_changed_notify: volume_db: -601 //0
_usb_audio_vol_changed_notify: volume_db: -451 //1
_usb_audio_vol_changed_notify: volume_db: -391 //2
_usb_audio_vol_changed_notify: volume_db: -342 //3
_usb_audio_vol_changed_notify: volume_db: -300 //4
_usb_audio_vol_changed_notify: volume_db: -264 //5
_usb_audio_vol_changed_notify: volume_db: -234 //6
_usb_audio_vol_changed_notify: volume_db: -204 //7
_usb_audio_vol_changed_notify: volume_db: -174 //8
_usb_audio_vol_changed_notify: volume_db: -156 //9
_usb_audio_vol_changed_notify: volume_db: -126 //10
_usb_audio_vol_changed_notify: volume_db: -102 //11
_usb_audio_vol_changed_notify: volume_db: -78 //12
_usb_audio_vol_changed_notify: volume_db: -60 //13
_usb_audio_vol_changed_notify: volume_db: -36 //14
_usb_audio_vol_changed_notify: volume_db: -18 //15
_usb_audio_vol_changed_notify: volume_db: 0 //16
2. win7-10小机调音51级
_usb_audio_vol_changed_notify: volume_db: -601 //0
_usb_audio_vol_changed_notify: volume_db: -494 //1
_usb_audio_vol_changed_notify: volume_db: -431 //2
_usb_audio_vol_changed_notify: volume_db: -387 //3
_usb_audio_vol_changed_notify: volume_db: -353
_usb_audio_vol_changed_notify: volume_db: -325 //4
_usb_audio_vol_changed_notify: volume_db: -302
_usb_audio_vol_changed_notify: volume_db: -281 //5
_usb_audio_vol_changed_notify: volume_db: -264
_usb_audio_vol_changed_notify: volume_db: -247 //6
_usb_audio_vol_changed_notify: volume_db: -233
_usb_audio_vol_changed_notify: volume_db: -220 //7
_usb_audio_vol_changed_notify: volume_db: -207
_usb_audio_vol_changed_notify: volume_db: -196
_usb_audio_vol_changed_notify: volume_db: -186 //8
_usb_audio_vol_changed_notify: volume_db: -176
_usb_audio_vol_changed_notify: volume_db: -167 //9
_usb_audio_vol_changed_notify: volume_db: -158
_usb_audio_vol_changed_notify: volume_db: -150
_usb_audio_vol_changed_notify: volume_db: -142 //10
_usb_audio_vol_changed_notify: volume_db: -134
_usb_audio_vol_changed_notify: volume_db: -127
_usb_audio_vol_changed_notify: volume_db: -121 //11
_usb_audio_vol_changed_notify: volume_db: -114
_usb_audio_vol_changed_notify: volume_db: -108
_usb_audio_vol_changed_notify: volume_db: -102
_usb_audio_vol_changed_notify: volume_db: -96 //12
_usb_audio_vol_changed_notify: volume_db: -91
_usb_audio_vol_changed_notify: volume_db: -85
_usb_audio_vol_changed_notify: volume_db: -80
_usb_audio_vol_changed_notify: volume_db: -75
_usb_audio_vol_changed_notify: volume_db: -70 //13
_usb_audio_vol_changed_notify: volume_db: -66
_usb_audio_vol_changed_notify: volume_db: -61
_usb_audio_vol_changed_notify: volume_db: -57
_usb_audio_vol_changed_notify: volume_db: -52
_usb_audio_vol_changed_notify: volume_db: -48 //14
_usb_audio_vol_changed_notify: volume_db: -44
_usb_audio_vol_changed_notify: volume_db: -40
_usb_audio_vol_changed_notify: volume_db: -36
_usb_audio_vol_changed_notify: volume_db: -33
_usb_audio_vol_changed_notify: volume_db: -29 //15
_usb_audio_vol_changed_notify: volume_db: -25
_usb_audio_vol_changed_notify: volume_db: -22
_usb_audio_vol_changed_notify: volume_db: -19
_usb_audio_vol_changed_notify: volume_db: -15
_usb_audio_vol_changed_notify: volume_db: -12
_usb_audio_vol_changed_notify: volume_db: -9
_usb_audio_vol_changed_notify: volume_db: -6
_usb_audio_vol_changed_notify: volume_db: -3
_usb_audio_vol_changed_notify: volume_db: 0
3. winxp小机调音26级
_usb_audio_vol_changed_notify: volume_db: -601 //0
_usb_audio_vol_changed_notify: volume_db: -577 //1
_usb_audio_vol_changed_notify: volume_db: -553
_usb_audio_vol_changed_notify: volume_db: -529
_usb_audio_vol_changed_notify: volume_db: -505
_usb_audio_vol_changed_notify: volume_db: -481
_usb_audio_vol_changed_notify: volume_db: -457
_usb_audio_vol_changed_notify: volume_db: -433 //2
_usb_audio_vol_changed_notify: volume_db: -409
_usb_audio_vol_changed_notify: volume_db: -384 //3
_usb_audio_vol_changed_notify: volume_db: -360
_usb_audio_vol_changed_notify: volume_db: -336 //4
_usb_audio_vol_changed_notify: volume_db: -312
_usb_audio_vol_changed_notify: volume_db: -288 //5
_usb_audio_vol_changed_notify: volume_db: -264
_usb_audio_vol_changed_notify: volume_db: -240 //6
_usb_audio_vol_changed_notify: volume_db: -216 //7
_usb_audio_vol_changed_notify: volume_db: -192 //8
_usb_audio_vol_changed_notify: volume_db: -168 //9
_usb_audio_vol_changed_notify: volume_db: -144 //10
_usb_audio_vol_changed_notify: volume_db: -120 //11
_usb_audio_vol_changed_notify: volume_db: -96 //12
_usb_audio_vol_changed_notify: volume_db: -72 //13
_usb_audio_vol_changed_notify: volume_db: -48 //14
_usb_audio_vol_changed_notify: volume_db: -24 //15
_usb_audio_vol_changed_notify: volume_db: 0
4. Usound音量映射表取值
4. 测试伪代码
(1)音量级别划分可行性说明
划分成17级,级别值为0~16,0音量值最小(等价于静音),16音量最大。
(2)附简单测试程序
文件usound_main.c
-----------------------------------------------------------------------------------------
#define USB_AUDIO_VOL_LEVEL 17
static const short usb_audio_pa_table[USB_AUDIO_VOL_LEVEL] = {
-590, -440, -380, -339,
-290, -240, -220, -194,
-170, -147, -123, -100,
-74, -50, -30, -2,
0,
};
static u8_t usb_audio_get_volume_level_by_db(int vol_db)
{
u8_t i;
if (vol_db == 0) {
return 16;
} else {
for(i=0; i < USB_AUDIO_VOL_LEVEL; i++) {
if( vol_db < usb_audio_pa_table[i])
break;
}
return i;
}
}
-----------------------------------------------------------------------------------------
static void _usb_audio_event_callback_handle(u8_t info_type, u16_t pstore_info)
{
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
case USOUND_SYNC_HOST_VOL_TYPE:
{
int volume_db = usb_host_sync_volume_to_device(pstore_info);
u8_t volume_level = usb_audio_get_volume_level_by_db(volume_db);
SYS_LOG_WRN("volume_level(db): %d\n", volume_level); //小机按键调音,win7/10、XP、Mac都能打印出音量级:0~16
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
}