Mercurial > mplayer.hg
changeset 25641:58fd8ebcd6e3
allow profile loading per audio/video output
author | ben |
---|---|
date | Thu, 10 Jan 2008 23:32:50 +0000 |
parents | a51e1bd9ba4f |
children | 0c10c8859be8 |
files | mplayer.c |
diffstat | 1 files changed, 22 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/mplayer.c Thu Jan 10 21:47:33 2008 +0000 +++ b/mplayer.c Thu Jan 10 23:32:50 2008 +0000 @@ -882,6 +882,23 @@ } } +#define PROFILE_CFG_VO "vo." +#define PROFILE_CFG_AO "ao." + +static void load_per_output_config (m_config_t* conf, char *cfg, char *out) +{ + char profile[strlen (cfg) + strlen (out) + 1]; + m_profile_t *p; + + sprintf (profile, "%s%s", cfg, out); + p = m_config_get_profile (conf, profile); + if (p) + { + mp_msg(MSGT_CPLAYER,MSGL_INFO,MSGTR_LoadingExtensionProfile, profile); + m_config_set_profile(conf,p); + } +} + static void load_per_file_config (m_config_t* conf, const char *const file) { char *confpath; @@ -2747,6 +2764,11 @@ load_per_file_config (mconfig, filename); } + if (video_driver_list) + load_per_output_config (mconfig, PROFILE_CFG_VO, video_driver_list[0]); + if (audio_driver_list) + load_per_output_config (mconfig, PROFILE_CFG_AO, audio_driver_list[0]); + // We must enable getch2 here to be able to interrupt network connection // or cache filling if(!noconsolecontrols && !slave_mode){