diff --git a/cfg-mplayer.h b/cfg-mplayer.h index 5fe5f74248..97e7266586 100644 --- a/cfg-mplayer.h +++ b/cfg-mplayer.h @@ -103,6 +103,7 @@ struct config conf[]={ // {"vids", &avi_header.video_codec, CONF_TYPE_STRING, 0, 0, 0}, {"mc", &default_max_pts_correction, CONF_TYPE_FLOAT, CONF_RANGE, 0, 10}, {"fps", &force_fps, CONF_TYPE_FLOAT, CONF_MIN, 0, 0}, + {"srate", &force_srate, CONF_TYPE_INT, CONF_RANGE, 1000, 96001}, {"afm", &audio_format, CONF_TYPE_INT, CONF_RANGE, 1, 6}, {"dshow", &allow_dshow, CONF_TYPE_FLAG, 0, 0, 1}, {"nodshow", &allow_dshow, CONF_TYPE_FLAG, 0, 1, 0}, diff --git a/mplayer.c b/mplayer.c index 7c614615a5..b561623237 100644 --- a/mplayer.c +++ b/mplayer.c @@ -417,6 +417,7 @@ int dvdsub_id=-1; float default_max_pts_correction=-1;//0.01f; int delay_corrected=1; float force_fps=0; +int force_srate=0; float audio_delay=0; float initial_pts_delay=0; int vcd_track=0; @@ -1407,7 +1408,8 @@ int drop_frame_cnt=0; if(has_audio){ - if(!audio_out->init(sh_audio->samplerate,sh_audio->channels,sh_audio->sample_format,0)){ + if(!audio_out->init(force_srate?force_srate:sh_audio->samplerate, + sh_audio->channels,sh_audio->sample_format,0)){ printf("couldn't open/init audio device -> NOSOUND\n"); has_audio=0; }