diff options
author | wm4 <wm4@nowhere> | 2013-03-31 04:24:53 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-04-13 04:21:30 +0200 |
commit | 071a8f50b96758ced05e1eef3aba5ce915a56479 (patch) | |
tree | ea1541a6d08d3a9c98f515a8c9c6b8b96ff2f929 /core | |
parent | 0d939a6847b139a29aaa21bd0b73d5fa28c6fb03 (diff) | |
download | mpv-071a8f50b96758ced05e1eef3aba5ce915a56479.tar.bz2 mpv-071a8f50b96758ced05e1eef3aba5ce915a56479.tar.xz |
options: add option to prevent decoder audio downmixing
Also rename --a52drc to --ad-lavc-ac3drc, and add --ad-lavc-o.
Diffstat (limited to 'core')
-rw-r--r-- | core/cfg-mplayer.h | 5 | ||||
-rw-r--r-- | core/defaultopts.c | 5 | ||||
-rw-r--r-- | core/mplayer.c | 4 | ||||
-rw-r--r-- | core/options.h | 7 |
4 files changed, 15 insertions, 6 deletions
diff --git a/core/cfg-mplayer.h b/core/cfg-mplayer.h index 56e606ff8e..6e776f6598 100644 --- a/core/cfg-mplayer.h +++ b/core/cfg-mplayer.h @@ -276,6 +276,7 @@ const m_option_t msgl_config[]={ }; extern const m_option_t lavc_decode_opts_conf[]; +extern const m_option_t ad_lavc_decode_opts_conf[]; #define OPT_BASE_STRUCT struct MPOpts @@ -424,8 +425,6 @@ const m_option_t common_opts[] = { // ignore header-specified delay (dwStart) OPT_FLAG("ignore-start", ignore_start, 0), - OPT_FLOATRANGE("a52drc", drc_level, 0, 0, 2), - // ------------------------- codec/vfilter options -------------------- // MP3-only: select stereo/left/right @@ -466,6 +465,8 @@ const m_option_t common_opts[] = { {"lavdopts", (void *) lavc_decode_opts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, {"lavfdopts", (void *) lavfdopts_conf, CONF_TYPE_SUBCONFIG, 0, 0, 0, NULL}, + + {"ad-lavc", (void *) ad_lavc_decode_opts_conf, CONF_TYPE_SUBCONFIG}, // ------------------------- subtitles options -------------------- OPT_STRINGLIST("sub", sub_name, 0), diff --git a/core/defaultopts.c b/core/defaultopts.c index 71ce2ed812..75a3b8d226 100644 --- a/core/defaultopts.c +++ b/core/defaultopts.c @@ -74,7 +74,6 @@ void set_default_mplayer_options(struct MPOpts *opts) .audio_output_channels = 2, .audio_output_format = -1, // AF_FORMAT_UNKNOWN .playback_speed = 1., - .drc_level = 1., .movie_aspect = -1., .sub_auto = 1, .osd_bar_visible = 1, @@ -90,6 +89,10 @@ void set_default_mplayer_options(struct MPOpts *opts) .workaround_bugs = 1, // autodetect .error_concealment = 3, }, + .ad_lavc_param = { + .ac3drc = 1., + .downmix = 1, + }, .input = { .key_fifo_size = 7, .ar_delay = 100, diff --git a/core/mplayer.c b/core/mplayer.c index 7023b6f8f8..64c8e9555d 100644 --- a/core/mplayer.c +++ b/core/mplayer.c @@ -1562,8 +1562,8 @@ void reinit_audio_chain(struct MPContext *mpctx) mpctx->ao = ao_create(opts, mpctx->input); mpctx->ao->samplerate = opts->force_srate; mpctx->ao->format = opts->audio_output_format; - if (mpctx->sh_audio->channels != opts->audio_output_channels && - opts->audio_output_channels == 2) + // Automatic downmix + if (opts->audio_output_channels == 2 && mpctx->sh_audio->channels != 2) mpctx->ao->channels = 2; } ao = mpctx->ao; diff --git a/core/options.h b/core/options.h index 0f57381f30..e72778dbde 100644 --- a/core/options.h +++ b/core/options.h @@ -155,7 +155,6 @@ typedef struct MPOpts { int force_srate; int dtshd; float playback_speed; - float drc_level; struct m_obj_settings *vf_settings; float movie_aspect; int flip; @@ -204,6 +203,12 @@ typedef struct MPOpts { char *avopt; } lavc_param; + struct ad_lavc_param { + float ac3drc; + int downmix; + char *avopt; + } ad_lavc_param; + struct lavfdopts { int probesize; int probescore; |