mirror of
https://github.com/mpv-player/mpv
synced 2024-12-27 17:42:17 +00:00
425ac31a3b
--softvol is enabled by default. For most audio outputs, this is a good thing, as they have either their own (bad) soft volume implementation, or control the system mixer. With ao_pulse, the situation is a bit different: it supports per-application volume (i.e. volume control is not really global). More importantly, ao_pulse uses a rather large audio buffer, and changing the volume with mplayer's volume filter has a large delay. With the native ao_pulse volume control, it's instant, because PulseAudio's audio filtering happens at a later stage in its processing pipeline (inaccessible for mplayer). This means native volume control should really be allowed for ao_pulse, while it's the reverse for other audio outputs. Make --softvol a choice option, and add a new "auto" choice. This is default and will use PA's volume control with ao_pulse, and mplayer's volume filter otherwise (i.e. the old softvol behavior).
78 lines
2.1 KiB
C
78 lines
2.1 KiB
C
#include <stddef.h>
|
|
|
|
#include "config.h"
|
|
#include "defaultopts.h"
|
|
#include "options.h"
|
|
#include "mixer.h"
|
|
|
|
void set_default_mplayer_options(struct MPOpts *opts)
|
|
{
|
|
*opts = (const struct MPOpts){
|
|
.audio_driver_list = NULL,
|
|
.video_driver_list = NULL,
|
|
.fixed_vo = 1,
|
|
.softvol = SOFTVOL_AUTO,
|
|
.softvol_max = 200,
|
|
.ao_buffersize = -1,
|
|
.vo_wintitle = "mplayer - ${filename}",
|
|
.monitor_pixel_aspect = 1.0,
|
|
.vo_panscanrange = 1.0,
|
|
.cursor_autohide_delay = 1000,
|
|
.vo_gamma_gamma = 1000,
|
|
.vo_gamma_brightness = 1000,
|
|
.vo_gamma_contrast = 1000,
|
|
.vo_gamma_saturation = 1000,
|
|
.vo_gamma_hue = 1000,
|
|
.osd_level = 1,
|
|
.osd_duration = 1000,
|
|
.loop_times = -1,
|
|
.ordered_chapters = 1,
|
|
.chapter_merge_threshold = 100,
|
|
.stream_cache_min_percent = 20.0,
|
|
.stream_cache_seek_min_percent = 50.0,
|
|
.chapterrange = {-1, -1},
|
|
.edition_id = -1,
|
|
.user_correct_pts = -1,
|
|
.initial_audio_sync = 1,
|
|
.term_osd = 2,
|
|
.consolecontrols = 1,
|
|
.doubleclick_time = 300,
|
|
.audio_id = -1,
|
|
.video_id = -1,
|
|
.sub_id = -1,
|
|
.sub_visibility = 1,
|
|
.extension_parsing = 1,
|
|
.audio_output_channels = 2,
|
|
.audio_output_format = -1, // AF_FORMAT_UNKNOWN
|
|
.playback_speed = 1.,
|
|
.drc_level = 1.,
|
|
.movie_aspect = -1.,
|
|
.flip = -1,
|
|
.vd_use_slices = 1,
|
|
.sub_auto = 1,
|
|
#ifdef CONFIG_ASS
|
|
.ass_enabled = 1,
|
|
#endif
|
|
.ass_font_scale = 1,
|
|
.ass_vsfilter_aspect_compat = 1,
|
|
.use_embedded_fonts = 1,
|
|
|
|
.lavc_param = {
|
|
.workaround_bugs = 1, // autodetect
|
|
.error_concealment = 3,
|
|
},
|
|
.input = {
|
|
.key_fifo_size = 7,
|
|
.ar_delay = 100,
|
|
.ar_rate = 8,
|
|
.use_joystick = 1,
|
|
.use_lirc = 1,
|
|
.use_lircc = 1,
|
|
#ifdef CONFIG_APPLE_REMOTE
|
|
.use_ar = 1,
|
|
#endif
|
|
.default_bindings = 1,
|
|
}
|
|
};
|
|
}
|