From 5accf28bcb01c37b767dc9883015ec74390c6ee4 Mon Sep 17 00:00:00 2001 From: Breizh Date: Wed, 29 Nov 2023 03:32:30 +0100 Subject: [PATCH] Changement interface MPV --- .bash_profile | 2 +- .config/mpv/mpv.conf | 12 +- .config/mpv/script-opts/osc.conf | 1 + .config/mpv/script-opts/thumbfast.conf | 37 ++++ .config/mpv/script-opts/uosc.conf | 229 +++++++++++++++++++++++++ 5 files changed, 276 insertions(+), 5 deletions(-) create mode 100644 .config/mpv/script-opts/osc.conf create mode 100644 .config/mpv/script-opts/thumbfast.conf create mode 100644 .config/mpv/script-opts/uosc.conf diff --git a/.bash_profile b/.bash_profile index b6f3f98..fdd600a 100644 --- a/.bash_profile +++ b/.bash_profile @@ -23,7 +23,7 @@ eval $(ssh-agent -s) if [ -z "$DISPLAY" ] && [ -n "$XDG_VTNR" ] && [ "$XDG_VTNR" -eq 1 ]; then export GTK2_RC_FILES="$HOME/.gtkrc-2.0" export QT_QPA_PLATFORMTHEME=qt5ct - export BROWSER="systemd-run --user --scope -p MemoryMax=3G -p MemorySwapMax=4G firefox" + export BROWSER="systemd-run --user --scope -p MemoryMax=4G firefox" export TERMINAL=urxvtc export XDG_CURRENT_DESKTOP=i3 # exec sway -d 2> $HOME/.sway.log diff --git a/.config/mpv/mpv.conf b/.config/mpv/mpv.conf index 0e94c21..c1e1672 100644 --- a/.config/mpv/mpv.conf +++ b/.config/mpv/mpv.conf @@ -2,7 +2,7 @@ profile=gpu-hq scale=ewa_lanczossharp cscale=ewa_lanczossharp -video-sync=display-resample +#video-sync=display-resample # Interpolation # interpolation @@ -23,7 +23,7 @@ sub-file-paths=~/Sous-titres/ sub-font=IBM Plex Sans sub-font-size=25 sub-margin-y=10 -slang=en,eng,en-US,en-GB,fr,fre,fra,fr-FR +#slang=en,eng,en-US,en-GB,fr,fre,fra,fr-FR #slang=fr,fre,fra # Cache @@ -38,11 +38,15 @@ prefetch-playlist=yes # Autre input-ipc-server=/tmp/mpvsocket hr-seek-framedrop=no -title=${?chapter:${chapter-metadata/by-key/title} | }${media-title} | mpv #osd-msg3=${media-title}${?chapter:\n ${chapter-metadata/by-key/title}}\n${time-pos} / ${playtime-remaining} #osd-font-size=25 -osc=no screenshot-directory=~/Images/Screenshots/MPV +title=${?chapter:${chapter-metadata/by-key/title} | }${media-title} | mpv + +# UI (en cas d’UI custom) +osc=no +osd-bar=no +border=no # TV Free rtsp-transport=lavf diff --git a/.config/mpv/script-opts/osc.conf b/.config/mpv/script-opts/osc.conf new file mode 100644 index 0000000..dfc4c3f --- /dev/null +++ b/.config/mpv/script-opts/osc.conf @@ -0,0 +1 @@ +title=${?media-title:${media-title}}${!media-title:${filename}}${?chapter: : ${chapter}} diff --git a/.config/mpv/script-opts/thumbfast.conf b/.config/mpv/script-opts/thumbfast.conf new file mode 100644 index 0000000..12b11bd --- /dev/null +++ b/.config/mpv/script-opts/thumbfast.conf @@ -0,0 +1,37 @@ +# Socket path (leave empty for auto) +socket= + +# Thumbnail path (leave empty for auto) +thumbnail= + +# Maximum thumbnail size in pixels (scaled down to fit) +# Values are scaled when hidpi is enabled +max_height=200 +max_width=200 + +# Apply tone-mapping, no to disable +tone_mapping=auto + +# Overlay id +overlay_id=42 + +# Spawn thumbnailer on file load for faster initial thumbnails +spawn_first=no + +# Close thumbnailer process after an inactivity period in seconds, 0 to disable +quit_after_inactivity=0 + +# Enable on network playback +network=yes + +# Enable on audio playback +audio=no + +# Enable hardware decoding +hwdec=yes + +# Windows only: use native Windows API to write to pipe (requires LuaJIT) +direct_io=no + +# Custom path to the mpv executable +mpv_path=mpv diff --git a/.config/mpv/script-opts/uosc.conf b/.config/mpv/script-opts/uosc.conf new file mode 100644 index 0000000..b552ed1 --- /dev/null +++ b/.config/mpv/script-opts/uosc.conf @@ -0,0 +1,229 @@ +# Display style of current position. available: line, bar +timeline_style=line +# Line display style config +timeline_line_width=2 +# Timeline size when fully expanded, in pixels, 0 to disable +timeline_size=40 +# Comma separated states when element should always be fully visible. +# Available: paused, audio, image, video, idle, windowed, fullscreen +timeline_persistency= +# Top border of background color to help visually separate timeline from video +timeline_border=1 +# When scrolling above timeline, wheel will seek by this amount of seconds +timeline_step=5 +# Render cache indicators for streaming content +timeline_cache=yes + +# When to display an always visible progress bar (minimized timeline). Can be: windowed, fullscreen, always, never +# Can also be toggled on demand with `toggle-progress` command. +progress=always +progress_size=2 +progress_line_width=20 + +# A comma delimited list of controls above the timeline. Set to `never` to disable. +# Parameter spec: enclosed in `{}` means value, enclosed in `[]` means optional +# Full item syntax: `[<[!]{disposition1}[,[!]{dispositionN}]>]{element}[:{paramN}][#{badge}[>{limit}]][?{tooltip}]` +# Common properties: +# `{icon}` - parameter used to specify an icon name (example: `face`) +# - pick here: https://fonts.google.com/icons?icon.platform=web&icon.set=Material+Icons&icon.style=Rounded +# `{element}`s and their parameters: +# `{shorthand}` - preconfigured shorthands: +# `play-pause`, `menu`, `subtitles`, `audio`, `video`, `playlist`, +# `chapters`, `editions`, `stream-quality`, `open-file`, `items`, +# `next`, `prev`, `first`, `last`, `audio-device`, `fullscreen`, +# `loop-playlist`, `loop-file`, `shuffle` +# `speed[:{scale}]` - display speed slider, [{scale}] - factor of controls_size, default: 1.3 +# `command:{icon}:{command}` - button that executes a {command} when pressed +# `toggle:{icon}:{prop}[@{owner}]` - button that toggles mpv property +# `cycle:{default_icon}:{prop}[@{owner}]:{value1}[={icon1}][!]/{valueN}[={iconN}][!]` +# - button that cycles mpv property between values, each optionally having different icon and active flag +# - presence of `!` at the end will style the button as active +# - `{owner}` is the name of a script that manages this property if any +# `gap[:{scale}]` - display an empty gap +# {scale} - factor of controls_size, default: 0.3 +# `space` - fills all available space between previous and next item, useful to align items to the right +# - multiple spaces divide the available space among themselves, which can be used for centering +# Item visibility control: +# `<[!]{disposition1}[,[!]{dispositionN}]>` - optional prefix to control element's visibility +# - `{disposition}` can be one of: +# - `idle` - true if mpv is in idle mode (no file loaded) +# - `image` - true if current file is a single image +# - `audio` - true for audio only files +# - `video` - true for files with a video track +# - `has_many_video` - true for files with more than one video track +# - `has_image` - true for files with a cover or other image track +# - `has_audio` - true for files with an audio track +# - `has_many_audio` - true for files with more than one audio track +# - `has_sub` - true for files with an subtitle track +# - `has_many_sub` - true for files with more than one subtitle track +# - `has_many_edition` - true for files with more than one edition +# - `has_chapter` - true for files with chapter list +# - `stream` - true if current file is read from a stream +# - `has_playlist` - true if current playlist has 2 or more items in it +# - prefix with `!` to negate the required disposition +# Examples: +# - `stream-quality` - show stream quality button only for streams +# - `audio` - show audio tracks button for all files that have +# an audio track, but are not exclusively audio only files +# Place `#{badge}[>{limit}]` after the element params to give it a badge. Available badges: +# `sub`, `audio`, `video` - track type counters +# `{mpv_prop}` - any mpv prop that makes sense to you: https://mpv.io/manual/master/#property-list +# - if prop value is an array it'll display its size +# `>{limit}` will display the badge only if it's numerical value is above this threshold. +# Example: `#audio>1` +# Place `?{tooltip}` after the element config to give it a tooltip. +# Example implementations: +# menu = command:menu:script-binding uosc/menu-blurred?Menu +# subtitles = command:subtitles:script-binding uosc/subtitles#sub?Subtitles +# fullscreen = cycle:crop_free:fullscreen:no/yes=fullscreen_exit!?Fullscreen +# loop-playlist = cycle:repeat:loop-playlist:no/inf!?Loop playlist +# toggle:{icon}:{prop} = cycle:{icon}:{prop}:no/yes! +controls=menu,gap,subtitles,audio,video,editions,stream-quality,gap,space,speed,space,shuffle,loop-playlist,loop-file,gap,prev,items,next,gap,fullscreen +controls_size=32 +controls_margin=8 +controls_spacing=2 +controls_persistency= + +# Where to display volume controls: none, left, right +volume=right +volume_size=40 +volume_border=1 +volume_step=1 +volume_persistency= + +# Playback speed widget: mouse drag or wheel to change, click to reset +speed_step=0.1 +speed_step_is_factor=no +speed_persistency= + +# Controls all menus, such as context menu, subtitle loader/selector, etc +menu_item_height=36 +menu_min_width=260 +menu_padding=4 +# Determines if `/` or `ctrl+f` is required to activate the search, or if typing +# any text is sufficient. +# When enabled, you can no longer toggle a menu off with the same key that opened it, if the key is a unicode character. +menu_type_to_search=yes + +# Top bar with window controls and media title +# Can be: never, no-border, always +top_bar=no-border +top_bar_size=40 +top_bar_controls=no +# Can be: `no` (hide), `yes` (inherit title from mpv.conf), or a custom template string +top_bar_title=${media-title} +# Template string to enable alternative top bar title. If alt title matches main title, +# it'll be hidden. Tip: use `${media-title}` for main, and `${filename}` for alt title. +top_bar_alt_title=${filename} +# Can be: +# `below` => display alt title below the main one +# `toggle` => toggle the top bar title text between main and alt by clicking +# the top bar, or calling `toggle-title` binding +top_bar_alt_title_place=below +# Flash top bar when any of these file types is loaded. Available: audio,image,video +top_bar_flash_on=video,audio,image +top_bar_persistency= + +# Window border drawn in no-border mode +window_border_size=1 + +# If there's no playlist and file ends, load next file in the directory +# Requires `keep-open=yes` in `mpv.conf`. +autoload=no +# What types to accept as next item when autoloading or requesting to play next file +# Can be: video, audio, image, subtitle +autoload_types=video,audio,image +# Enable uosc's playlist/directory shuffle mode +# This simply makes the next selected playlist or directory item be random, just +# like any other player in the world. It also has an easily togglable control button. +shuffle=no + +# Scale the interface by this factor +scale=1 +# Scale in fullscreen +scale_fullscreen=1.3 +# Adjust the text scaling to fit your font +font_scale=2 +# Border of text and icons when drawn directly on top of video +text_border=1.2 +# Border radius of buttons, menus, and all other rectangles +border_radius=4 +# A comma delimited list of color overrides in RGB HEX format. Defaults: +# foreground=ffffff,foreground_text=000000,background=000000,background_text=ffffff,curtain=111111,success=a5e075,error=ff616e +color= +# A comma delimited list of opacity overrides for various UI element backgrounds and shapes. +# This does not affect any text, which is always rendered fully opaque. Defaults: +# timeline=0.9,position=1,chapters=0.8,slider=0.9,slider_gauge=1,controls=0,speed=0.6,menu=1,submenu=0.4,border=1,title=1,tooltip=1,thumbnail=1,curtain=0.8,idle_indicator=0.8,audio_indicator=0.5,buffering_indicator=0.3,playlist_position=0.8 +opacity= +# Use a faster estimation method instead of accurate measurement +# setting this to `no` might have a noticeable impact on performance, especially in large menus. +text_width_estimation=yes +# Duration of animations in milliseconds +animation_duration=100 +# Execute command for background clicks shorter than this number of milliseconds, 0 to disable +# Execution always waits for `input-doubleclick-time` to filter out double-clicks +click_threshold=0 +click_command=cycle pause; script-binding uosc/flash-pause-indicator +# Flash duration in milliseconds used by `flash-{element}` commands +flash_duration=1000 +# Distances in pixels below which elements are fully faded in/out +proximity_in=40 +proximity_out=120 +# Use only bold font weight throughout the whole UI +font_bold=no +# One of `total`, `playtime-remaining` (scaled by the current speed), `time-remaining` (remaining length of file) +destination_time=playtime-remaining +# Display sub second fraction in timestamps up to this precision +time_precision=0 +# Display stream's buffered time in timeline if it's lower than this amount of seconds, 0 to disable +buffered_time_threshold=60 +# Hide UI when mpv autohides the cursor. Timing is controlled by `cursor-autohide` in `mpv.conf` (in milliseconds). +autohide=no +# Can be: flash, static, manual (controlled by flash-pause-indicator and decide-pause-indicator commands) +pause_indicator=flash +# Sizes to list in stream quality menu +stream_quality_options=4320,2160,1440,1080,720,480,360,240,144 +# Types to identify media files +video_types=3g2,3gp,asf,avi,f4v,flv,h264,h265,m2ts,m4v,mkv,mov,mp4,mp4v,mpeg,mpg,ogm,ogv,rm,rmvb,ts,vob,webm,wmv,y4m +audio_types=aac,ac3,aiff,ape,au,cue,dsf,dts,flac,m4a,mid,midi,mka,mp3,mp4a,oga,ogg,opus,spx,tak,tta,wav,weba,wma,wv +image_types=apng,avif,bmp,gif,j2k,jp2,jfif,jpeg,jpg,jxl,mj2,png,svg,tga,tif,tiff,webp +subtitle_types=aqt,ass,gsub,idx,jss,lrc,mks,pgs,pjs,psb,rt,sbv,slt,smi,sub,sup,srt,ssa,ssf,ttxt,txt,usf,vt,vtt +# Default open-file menu directory +default_directory=~/ +# List hidden files when reading directories. Due to environment limitations, this currently only hides +# files starting with a dot. Doesn't hide hidden files on windows (we have no way to tell they're hidden). +show_hidden_files=no +# Move files to trash (recycle bin) when deleting files. Dependencies: +# - Linux: `sudo apt install trash-cli` +# - MacOS: `brew install trash` +use_trash=no +# Adjusted osd margins based on the visibility of UI elements +adjust_osd_margins=yes + +# Adds chapter range indicators to some common chapter types. +# Additionally to displaying the start of the chapter as a diamond icon on top of the timeline, +# the portion of the timeline of that chapter range is also colored based on the config below. +# +# The syntax is a comma-delimited list of `{type}:{color}` pairs, where: +# `{type}` => range type. Currently supported ones are: +# - `openings`, `endings` => anime openings/endings +# - `intros`, `outros` => video intros/outros +# - `ads` => segments created by sponsor-block software like https://github.com/po5/mpv_sponsorblock +# `{color}` => an RGB(A) HEX color code (`rrggbb`, or `rrggbbaa`) +# +# To exclude marking any of the range types, simply remove them from the list. +chapter_ranges=openings:30abf964,endings:30abf964,ads:c54e4e80 +# Add alternative lua patterns to identify beginnings of simple chapter ranges (except for `ads`) +# Syntax: `{type}:{pattern}[,{patternN}][;{type}:{pattern}[,{patternN}]]` +chapter_range_patterns=openings:オープニング;endings:エンディング + +# Localization language priority from highest to lowest. +# Built in languages can be found in `uosc/intl`. +# `slang` is a keyword to inherit values from `--slang` mpv config. +# Supports paths to custom json files: `languages=~~/custom.json,slang,en` +languages=slang,en + +# A comma separated list of element IDs to disable. Available IDs: +# window_border, top_bar, timeline, controls, volume, +# idle_indicator, audio_indicator, buffering_indicator, pause_indicator +disable_elements=buffering_indicator