1
mirror of https://github.com/mpv-player/mpv synced 2024-10-30 04:46:41 +01:00
mpv/defaultopts.c
wm4 fee4d3b473 osd: add setting to display OSD always on terminal
Now the option --term-osd=force will cause mplayer to display all OSD
messages on the terminal, even if there is video.

Possible values for --term-osd:
- auto: use video OSD, or of there's no video, the terminal (default)
- off: always use video for OSD
- force: always use terminal for OSD

-term-osd and --term-osd are equivalent to --term-osd=force. This
changes the meaning of the option, since -term-osd used to enable the
OSD default behavior, i.e. --term-osd=auto.

-noterm-osd has the same effect as --term-osd=off, and is kept for
compatibility.

Implementation note:

The location for the OSD text was shared between the two code paths (it
was in osd_state.osd_text). We can't rely on the fact that the video-OSD
update code normally isn't run when --term-osd is called. When e.g.
panscan is updated, the video OSD code will draw the OSD anyway. This
would sometimes show unwanted OSD text on the video.

Deal with this by putting the current terminal-OSD text in a different
place (in MPContext.terminal_osd_text) to deal with this.
2012-01-18 04:33:30 +01:00

76 lines
2.0 KiB
C

#include <stddef.h>
#include "config.h"
#include "defaultopts.h"
#include "options.h"
void set_default_mplayer_options(struct MPOpts *opts)
{
*opts = (const struct MPOpts){
.audio_driver_list = NULL,
.video_driver_list = NULL,
.fixed_vo = 1,
.ao_buffersize = -1,
.monitor_pixel_aspect = 1.0,
.vo_panscanrange = 1.0,
.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,
.stream_dump_name = "stream.dump",
.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,
.term_osd_esc = "\x1b[A\r\x1b[K",
.consolecontrols = 1,
.doubleclick_time = 300,
.audio_id = -1,
.video_id = -1,
.sub_id = -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_resilience = 2,
.error_concealment = 3,
},
.input = {
.config_file = "input.conf",
.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,
}
};
}