1
0
mirror of https://github.com/mpv-player/mpv synced 2025-03-25 04:38:01 +00:00

Applied fix for mixercontrol w/alsa ossemu by Christian Ohm.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@1882 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
atmos4 2001-09-11 16:26:41 +00:00
parent f915020386
commit 581a81f98e
2 changed files with 8 additions and 12 deletions

View File

@ -127,14 +127,15 @@ void mixer_setvolume( float l,float r ){
#endif #endif
#define MIXER_CHANGE 3
void mixer_incvolume( void ) void mixer_incvolume( void )
{ {
float mixer_l, mixer_r; float mixer_l, mixer_r;
mixer_getvolume( &mixer_l,&mixer_r ); mixer_getvolume( &mixer_l,&mixer_r );
mixer_l++; mixer_l += MIXER_CHANGE;
if ( mixer_l > 100 ) mixer_l = 100; if ( mixer_l > 100 ) mixer_l = 100;
mixer_r++; mixer_r += MIXER_CHANGE;
if ( mixer_r > 100 ) mixer_r = 100; if ( mixer_r > 100 ) mixer_r = 100;
mixer_setvolume( mixer_l,mixer_r ); mixer_setvolume( mixer_l,mixer_r );
} }
@ -143,9 +144,9 @@ void mixer_decvolume( void )
{ {
float mixer_l, mixer_r; float mixer_l, mixer_r;
mixer_getvolume( &mixer_l,&mixer_r ); mixer_getvolume( &mixer_l,&mixer_r );
mixer_l--; mixer_l -= MIXER_CHANGE;
if ( mixer_l < 0 ) mixer_l = 0; if ( mixer_l < 0 ) mixer_l = 0;
mixer_r--; mixer_r -= MIXER_CHANGE;
if ( mixer_r < 0 ) mixer_r = 0; if ( mixer_r < 0 ) mixer_r = 0;
mixer_setvolume( mixer_l,mixer_r ); mixer_setvolume( mixer_l,mixer_r );
} }

View File

@ -1645,22 +1645,17 @@ if(auto_quality>0){
case '0': case '0':
case '*': case '*':
case '/': { case '/': {
float mixer_l, mixer_r;
mixer_getvolume( &mixer_l,&mixer_r );
if(c=='*' || c=='0'){ if(c=='*' || c=='0'){
if ( ++mixer_l > 100 ) mixer_l = 100; mixer_incvolume();
if ( ++mixer_r > 100 ) mixer_r = 100;
} else { } else {
if ( --mixer_l < 0 ) mixer_l = 0; mixer_decvolume();
if ( --mixer_r < 0 ) mixer_r = 0;
} }
mixer_setvolume( mixer_l,mixer_r );
#ifdef USE_OSD #ifdef USE_OSD
if(osd_level){ if(osd_level){
osd_visible=sh_video->fps; // 1 sec osd_visible=sh_video->fps; // 1 sec
vo_osd_progbar_type=OSD_VOLUME; vo_osd_progbar_type=OSD_VOLUME;
vo_osd_progbar_value=((mixer_l+mixer_r)*256.0)/200.0; vo_osd_progbar_value=(mixer_getbothvolume()*256.0)/100.0;
//printf("volume: %d\n",vo_osd_progbar_value); //printf("volume: %d\n",vo_osd_progbar_value);
} }
#endif #endif