├── input.conf ├── manager.json ├── mpv-version.txt ├── mpv.conf ├── script-opts ├── autocrop.conf ├── autoload.conf ├── celebi.conf ├── coverart.conf ├── coverart.jpg ├── evafast.conf ├── groupwatch_sync.conf ├── pointer-event.conf ├── trackselect.conf ├── uosc.conf └── webm.conf ├── scripts └── README.md ├── shaders ├── README.md └── noise-luma-adaptive.glsl └── vs ├── chicken.py └── scan_interlaced.py /input.conf: -------------------------------------------------------------------------------- 1 | # Play/Pause 2 | 3 | MBTN_RIGHT cycle pause; script-binding uosc/flash-pause-indicator 4 | SPACE cycle pause; script-binding uosc/flash-pause-indicator 5 | PLAY cycle pause; script-binding uosc/flash-pause-indicator 6 | PAUSE cycle pause; script-binding uosc/flash-pause-indicator 7 | PLAYPAUSE cycle pause; script-binding uosc/flash-pause-indicator 8 | PLAYONLY set pause no 9 | PAUSEONLY set pause yes 10 | 11 | # Seeking 12 | 13 | Shift+RIGHT no-osd frame-step 14 | Shift+LEFT no-osd frame-back-step 15 | 16 | j seek +0.09 relative+keyframes 17 | J seek -0.09 relative+keyframes 18 | 19 | LEFT script-binding evafast-rewind 20 | RIGHT script-binding evafast 21 | FORWARD seek +60; script-binding uosc/flash-timeline 22 | REWIND seek -60; script-binding uosc/flash-timeline 23 | 24 | PGUP add chapter +1 25 | PGDWN add chapter -1 26 | Ctrl+RIGHT add chapter +1 27 | Ctrl+LEFT add chapter -1 28 | 29 | NEXT playlist-next 30 | PREV playlist-prev 31 | MBTN_BACK playlist-prev 32 | MBTN_FORWARD playlist-next 33 | Alt+LEFT playlist-prev 34 | Alt+RIGHT playlist-next 35 | Alt+UP playlist-prev 36 | Alt+DOWN playlist-next 37 | 38 | # Subtitles 39 | 40 | l cycle sub 41 | L cycle sub down 42 | o add sub-delay -0.042 43 | O add sub-delay +0.042 44 | Ctrl+o set sub-delay 0 45 | r add sub-pos -1 46 | R add sub-pos +1 47 | Ctrl+r set sub-pos 100 48 | v cycle sub-visibility 49 | V cycle sub-ass-vsfilter-aspect-compat 50 | u cycle-values sub-ass-override "force" "no" 51 | 52 | # Audio 53 | 54 | a cycle audio 55 | A cycle audio down 56 | p add audio-delay +0.100 57 | P add audio-delay -0.100 58 | Ctrl+p set audio-delay 0 59 | 60 | # Screenshots 61 | 62 | s screenshot 63 | S screenshot video 64 | Ctrl+s screenshot window 65 | Alt+s cycle-values screenshot-png-compression 0 7; cycle-values screenshot-format "png" "webp"; cycle-values framedrop no vo; screenshot each-frame 66 | #X cycle-values screenshot-template "vlcsnap-%tY-%tm-%td-%tHh%tMm%tSs%wT" "${?demuxer-via-network==yes:${media-title}}${?demuxer-via-network==yes:_${filename/no-ext}}${!demuxer-via-network==yes:${filename}}_%wH%wM%wS.%wT"; cycle-values screenshot-format "png" "webp"; show-text "vlc: ${?screenshot-format==webp:no}${!screenshot-format==webp:yes}" 67 | 68 | # Fullscreen 69 | 70 | ENTER cycle fullscreen 71 | f cycle fullscreen 72 | F cycle window-maximized 73 | ESC set fullscreen no 74 | 75 | # Volume 76 | 77 | AXIS_UP no-osd add volume +2; script-binding uosc/flash-volume 78 | AXIS_DOWN no-osd add volume -2; script-binding uosc/flash-volume 79 | UP no-osd add volume +2; script-binding uosc/flash-volume 80 | DOWN no-osd add volume -2; script-binding uosc/flash-volume 81 | Shift+UP no-osd add volume +10; script-binding uosc/flash-volume 82 | Shift+DOWN no-osd add volume -10; script-binding uosc/flash-volume 83 | VOLUME_UP no-osd add volume +2; script-binding uosc/flash-volume 84 | VOLUME_DOWN no-osd add volume -2; script-binding uosc/flash-volume 85 | 86 | m no-osd cycle mute; script-binding uosc/flash-volume 87 | MUTE no-osd cycle mute; script-binding uosc/flash-volume 88 | 89 | # Quit 90 | 91 | STOP quit 92 | POWER quit 93 | CLOSE_WIN quit 94 | Ctrl+c quit 4 95 | Ctrl+C set pause no; quit-watch-later 96 | 97 | # Scripts 98 | 99 | i script-binding stats/display-stats-toggle 100 | $ script-binding console/enable 101 | 102 | w script-binding evafast/toggle; script-binding evafast/flash-speed 103 | W script-binding display-webm-encoder 104 | Ctrl+w ab-loop 105 | 106 | Ctrl+k script-binding groupwatch_jump 107 | K script-binding groupwatch_start_here 108 | k script-binding groupwatch_sync 109 | Ctrl+K script-binding groupwatch_set_time 110 | 111 | c script-message-to crop toggle-crop 112 | C script-binding toggle_crop 113 | 114 | h script-binding memo-history 115 | H script-binding memo-search 116 | 117 | b script-binding sub-seek-forward 118 | B script-binding sub-seek-backward 119 | 120 | TAB script-binding uosc/peek-timeline 121 | MENU script-binding uosc/menu 122 | 123 | # Filters 124 | 125 | e change-list glsl-shaders toggle "~~/shaders/noise-luma-adaptive.glsl"; cycle deband 126 | d vf toggle bwdif 127 | D vf toggle "@scan_interlaced:vapoursynth=~~/vs/scan_interlaced.py:buffered-frames=10:concurrent-frames=3" 128 | n change-list glsl-shaders toggle "~~/shaders/adaptive-sharpen.glsl" 129 | N change-list glsl-shaders remove "~~/shaders/noise-luma-adaptive.glsl"; vf toggle "@chicken:vapoursynth=~~/vs/chicken.py:buffered-frames=5:concurrent-frames=3" 130 | 131 | t add tone-mapping-max-boost +0.5 132 | T add tone-mapping-max-boost -0.5 133 | Alt+t set tone-mapping-max-boost 0 134 | + add tone-mapping-desaturate +0.025 135 | = add tone-mapping-desaturate +0.025 136 | - add tone-mapping-desaturate -0.025 137 | Ctrl++ set tone-mapping-desaturate 0 138 | Ctrl+= set tone-mapping-desaturate 0 139 | Ctrl+- set tone-mapping-desaturate 0 140 | 141 | # Misc 142 | 143 | z apply-profile pip; script-binding uosc/toggle-progress 144 | Z apply-profile fullscreen-reset-ontop; script-binding uosc/toggle-progress 145 | Ctrl+z apply-profile pip restore; apply-profile fullscreen-reset-ontop restore; script-binding uosc/toggle-progress 146 | y vf toggle hflip 147 | Y vf toggle vflip 148 | Ctrl+y cycle-values video-rotate "90" "180" "270" "0" 149 | Ctrl+Y cycle-values "!reverse" video-rotate "90" "180" "270" "0" 150 | Ctrl+i cycle interpolation 151 | Ctrl+a cycle-values video-aspect-override "16:9" "4:3" "2.35:1" "-1" 152 | Ctrl+l cycle-values loop-file "inf" "no" 153 | Ctrl+h cycle-values hwdec "auto" "no" 154 | -------------------------------------------------------------------------------- /manager.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "title": "autocrop,autoload", 4 | "git":"https://github.com/mpv-player/mpv", 5 | "whitelist":"autocrop%.lua$|autoload%.lua$", 6 | "dest":"~~/scripts" 7 | }, 8 | { 9 | "title": "chapterskip", 10 | "git": "https://github.com/po5/chapterskip", 11 | "whitelist": "%.lua$", 12 | "dest": "~~/scripts" 13 | }, 14 | { 15 | "title": "celebi", 16 | "git": "https://github.com/po5/celebi", 17 | "whitelist": "%.lua$", 18 | "dest": "~~/scripts" 19 | }, 20 | { 21 | "title": "coverart", 22 | "git": "https://github.com/po5/mpv-coverart", 23 | "branch": "any-image-fallback", 24 | "whitelist": "%.lua$", 25 | "dest": "~~/scripts" 26 | }, 27 | { 28 | "title": "crop", 29 | "git": "https://github.com/po5/mpv-scripts-2", 30 | "whitelist": "crop%.lua$", 31 | "dest": "~~/scripts" 32 | }, 33 | { 34 | "title": "evafast", 35 | "git": "https://github.com/po5/evafast", 36 | "branch": "rewrite", 37 | "whitelist": "%.lua$", 38 | "dest": "~~/scripts" 39 | }, 40 | { 41 | "title": "groupwatch_sync", 42 | "git": "https://github.com/po5/groupwatch_sync", 43 | "whitelist": "%.lua$", 44 | "dest": "~~/scripts" 45 | }, 46 | { 47 | "title": "manager", 48 | "git": "https://github.com/po5/mpv_manager", 49 | "whitelist": "%.lua$", 50 | "dest": "~~/scripts" 51 | }, 52 | { 53 | "title": "memo", 54 | "git": "https://github.com/po5/memo", 55 | "whitelist": "%.lua$", 56 | "dest": "~~/scripts" 57 | }, 58 | { 59 | "title": "pointer-event", 60 | "git": "https://github.com/christoph-heinrich/mpv-pointer-event", 61 | "whitelist": "pointer%-event%.lua$", 62 | "dest": "~~/scripts" 63 | }, 64 | { 65 | "title": "sub-seek-two", 66 | "git": "https://gist.github.com/po5/9de69c90f9dc44427e58b1a2f9ad4ffd", 67 | "whitelist": "%.lua$", 68 | "dest": "~~/scripts" 69 | }, 70 | { 71 | "title": "thumbfast", 72 | "git": "https://github.com/po5/thumbfast", 73 | "whitelist": "%.lua$", 74 | "dest": "~~/scripts" 75 | }, 76 | { 77 | "title": "trackselect", 78 | "git": "https://github.com/po5/trackselect", 79 | "whitelist": "%.lua$", 80 | "dest": "~~/scripts" 81 | }, 82 | { 83 | "title": "uosc", 84 | "git": "https://github.com/tomasklaen/uosc", 85 | "branch": "main", 86 | "whitelist": "fonts", 87 | "dest": "~~/fonts" 88 | }, 89 | { 90 | "title": "uosc", 91 | "git": "https://github.com/tomasklaen/uosc", 92 | "branch": "main", 93 | "whitelist": "scripts/uosc", 94 | "dest": "~~/scripts/uosc" 95 | }, 96 | { 97 | "title": "webm", 98 | "url": "https://github.com/ekisu/mpv-webm/releases/download/latest/webm.lua", 99 | "dest": "~~/scripts" 100 | }, 101 | { 102 | "title": "adaptive-sharpen", 103 | "git": "https://gist.github.com/igv/8a77e4eb8276753b54bb94c1c50c317e", 104 | "whitelist": "%.glsl$", 105 | "dest": "~~/shaders" 106 | }, 107 | { 108 | "title": "KrigBilateral", 109 | "git": "https://gist.github.com/igv/a015fc885d5c22e6891820ad89555637", 110 | "whitelist": "%.glsl$", 111 | "dest": "~~/shaders" 112 | }, 113 | { 114 | "title": "PixelClipper", 115 | "git": "https://github.com/Artoriuz/glsl-pixel-clipper", 116 | "branch": "main", 117 | "whitelist": "pixelclipper_downscaling%.glsl$", 118 | "dest": "~~/shaders" 119 | }, 120 | { 121 | "title": "ravu", 122 | "git": "https://github.com/bjin/mpv-prescalers", 123 | "whitelist": "compute/ravu%-zoom%-ar%-r3%.hook$", 124 | "dest": "~~/shaders" 125 | } 126 | ] -------------------------------------------------------------------------------- /mpv-version.txt: -------------------------------------------------------------------------------- 1 | mpv 0.36.0-32-g3bdf702b1d Copyright © 2000-2023 mpv/MPlayer/mplayer2 projects 2 | built on UNKNOWN 3 | libplacebo version: v6.292.0-38-gfcba744b 4 | FFmpeg version: N-111652-gbf9f6a5e55 5 | FFmpeg library versions: 6 | libavutil 58.14.100 7 | libavcodec 60.22.100 8 | libavformat 60.10.100 9 | libswscale 7.3.100 10 | libavfilter 9.10.100 11 | libswresample 4.11.100 12 | -------------------------------------------------------------------------------- /mpv.conf: -------------------------------------------------------------------------------- 1 | # Video 2 | profile=gpu-hq 3 | 4 | vo=gpu-next 5 | hwdec=auto-copy-safe 6 | dscale=catmull_rom 7 | deband-grain=0 8 | 9 | glsl-shaders-append="~~/shaders/PixelClipper_downscaling.glsl" 10 | glsl-shaders-append="~~/shaders/ravu-zoom-ar-r3.hook" 11 | glsl-shaders-append="~~/shaders/KrigBilateral.glsl" 12 | glsl-shaders-append="~~/shaders/noise-luma-adaptive.glsl" 13 | 14 | gpu-shader-cache-dir="~~/shaders/cache" 15 | 16 | # Suppress useless warnings 17 | msg-level=pointer_event=error,input=error,demux=error,autoload=warn,dvdnav=fatal,ad=fatal 18 | 19 | # Bindings 20 | no-input-default-bindings 21 | input-ar-delay=300 22 | 23 | # Window 24 | keep-open 25 | no-border 26 | #snap-window 27 | force-window 28 | geometry=50%:50% 29 | autofit-larger=90%x90% 30 | autofit-smaller=40%x40% 31 | force-window-position 32 | no-taskbar-progress 33 | 34 | # OSC 35 | no-osc 36 | no-osd-bar 37 | osd-duration=2000 38 | osd-font-size=32 39 | osd-border-color="#262626" 40 | cursor-autohide-fs-only 41 | cursor-autohide=500 42 | 43 | # Playback 44 | no-pause 45 | reset-on-next-file=pause 46 | force-seekable 47 | image-display-duration=3 48 | volume-max=150 49 | volume=70 50 | af=scaletempo2=max-speed=5 51 | 52 | # Improve latency for livestreams 53 | demuxer-lavf-o=live_start_index=-1 54 | 55 | # youtube-dl 56 | ytdl-format=(bestvideo[fps>30][height<=1080]/bestvideo[fps>30][height<=1440]/bestvideo[fps>30][height<=2160]/bestvideo[fps>30]/bestvideo[height<=1080]/bestvideo[height<=1440]/bestvideo[height<=2160]/bestvideo)+(bestaudio[acodec=opus]/bestaudio)/best[fps>30][height<=1080]/best[fps>30][height<=1440]/best[fps>30][height<=2160]/best[fps>30]/best[height<=1080]/best[height<=1440]/best[height<=2160]/best 57 | ytdl-raw-options=write-thumbnail=,write-sub=,sub-format=ass/ssa/srt/best,sub-lang="enGB,en-GB,en,eng,enUS,en-US" 58 | # add ,cookies=/path/to/cookies.txt 59 | 60 | display-tags=icy-name,icy-description,Title,icy-title,Track,Album,icy-album,Artist,Album_Artist,service_name,Composer,Date,Description,Genre,Performer,Rating,Series,service_name,Comment 61 | 62 | # Screenshots 63 | screenshot-directory=~/Documents/mpv/ 64 | screenshot-template="%{?demuxer-via-network==yes:${media-title}%{?demuxer-via-network==yes:_${filename/no-ext}%{!demuxer-via-network==yes:${filename}_%wH%wM%wS.%wT" 65 | screenshot-format=webp 66 | screenshot-high-bit-depth 67 | screenshot-webp-lossless 68 | screenshot-webp-compression=6 69 | 70 | # Subtitles 71 | sub-font=HelveticaNeueLT Com 67 MdCn 72 | sub-font-size=50 73 | sub-border-size=2.5 74 | sub-color="#E6FFFFFF" 75 | sub-border-color="#D21C1C1C" 76 | sub-margin-y=35 77 | sub-blur=.3 78 | sub-use-margins=no 79 | #sub-ass-vsfilter-aspect-compat=no 80 | demuxer-mkv-subtitle-preroll 81 | demuxer-readahead-secs=10 82 | sub-filter-regex="\`\s*\'" 83 | #sub-filter-sdh 84 | subs-with-matching-audio=yes 85 | subs-fallback=default 86 | 87 | sub-auto=fuzzy 88 | audio-file-auto=fuzzy 89 | 90 | sub-ass-force-style=Hubuki - Name/Logo Trans.FontSize=0,Hubuki - Name/Logo Trans 2.FontSize=0,Hubuki - Name/Logo Trans 3.FontSize=0 91 | 92 | # Profiles 93 | 94 | [extension.gif] 95 | save-position-on-quit=no 96 | loop-file 97 | no-cache 98 | 99 | [extension.mp3] 100 | alpha=blend 101 | 102 | [extension.aac] 103 | alpha=blend 104 | 105 | [extension.mka] 106 | alpha=blend 107 | 108 | [extension.dts] 109 | alpha=blend 110 | 111 | [extension.flac] 112 | alpha=blend 113 | 114 | [extension.alac] 115 | alpha=blend 116 | 117 | [extension.ogg] 118 | alpha=blend 119 | 120 | [extension.m4a] 121 | alpha=blend 122 | 123 | [extension.ac3] 124 | alpha=blend 125 | 126 | [extension.opus] 127 | alpha=blend 128 | 129 | [extension.wav] 130 | alpha=blend 131 | 132 | [protocol.ytdl] 133 | profile=WEB 134 | 135 | [protocol.http] 136 | profile=WEB 137 | 138 | [protocol.https] 139 | profile=WEB 140 | 141 | [audio] 142 | ytdl-format=bestaudio[acodec=opus]/bestaudio/best[height<=1080]/best 143 | ytdl-raw-options=write-thumbnail= 144 | 145 | [no-loop] 146 | loop-file=no 147 | 148 | [no-deband] 149 | profile-cond=not p["deband"] 150 | glsl-shaders-remove="~~/shaders/luma-noise.glsl" 151 | 152 | [pip] 153 | profile-restore=copy-equal 154 | ontop 155 | osd-msg2=pip 156 | on-all-workspaces 157 | no-force-window-position 158 | geometry=100%:100% 159 | autofit=30%x30% 160 | autofit-smaller= 161 | autofit-larger= 162 | script-opts-append=uosc-timeline_start_hidden=yes 163 | 164 | [qc] 165 | load-auto-profiles=no 166 | script-opts-append=trackselect-enabled=no 167 | sub-ass-vsfilter-aspect-compat=yes 168 | sub-font-provider=none 169 | sub-filter-sdh=no 170 | sub-fix-timing=no 171 | deband=no 172 | glsl-shaders-clr 173 | 174 | [compare] 175 | profile-restore=copy 176 | title=Untitled comparison 177 | load-auto-profiles=no 178 | script-opts-append=trackselect-enabled=no 179 | sub-font-provider=none 180 | sub-filter-sdh=no 181 | sub-fix-timing=no 182 | no-sub 183 | deband=no 184 | glsl-shaders-clr 185 | screenshot-format=png 186 | screenshot-directory=~/Documents/mpv-compare/ 187 | screenshot-template="%f_%wH%wM%wS.%wT-%{!title==Untitled comparison:${title:}%{video-frame-info/picture-type:X}%{?estimated-frame-count==0:${?estimated-frame-number==0:X}%{?estimated-frame-count==0:${!estimated-frame-number==0:${estimated-frame-number:X}%{!estimated-frame-count==0:${estimated-frame-number:X}" 188 | osd-msg1="Frame ${estimated-frame-number:?}${?estimated-frame-count: of ${estimated-frame-count}}\nPicture type: ${video-frame-info/picture-type:?}\n${!title==Untitled comparison:${title:}}" 189 | osd-msg2="Frame ${estimated-frame-number:?}${?estimated-frame-count: of ${estimated-frame-count}}\nPicture type: ${video-frame-info/picture-type:?}\nInterlaced: ${video-frame-info/interlaced}\nTFF: ${video-frame-info/tff}\nRepeat: ${video-frame-info/repeat}\n${!title==Untitled comparison:${title:}}" 190 | 191 | [cache] 192 | demuxer-max-bytes=6000MiB 193 | demuxer-max-back-bytes=4000MiB 194 | 195 | [fullscreen-reset-ontop] 196 | profile-restore=copy 197 | profile-cond=p["osd-msg2"] == "pip" and p["fullscreen"] or p["window-maximized"] 198 | ontop=no 199 | 200 | [Anime] 201 | profile-cond=require "mp.utils".join_path(get("working-directory", ""), get("path", "")):sub(1, -get("filename", ""):len() - 1):lower():match("anime")~=nil 202 | profile-restore=copy-equal 203 | alang=ja,jp,jpn,japanese,Japanese,Japanese[jpn] 204 | blend-subtitles 205 | sub-filter-sdh=no 206 | script-opts-append=trackselect-enabled=yes 207 | 208 | [UHD] 209 | profile-cond=get("duration", 1) >= 1 and get("height", 0) > 1100 210 | profile-restore=copy 211 | blend-subtitles=no 212 | 213 | [HDR] 214 | profile-cond=p["demuxer-via-network"]==false and p["video-params/primaries"]=="bt.2020" 215 | profile-restore=copy-equal 216 | blend-subtitles=no 217 | deband=no 218 | deband-iterations=1 219 | deband-threshold=64 220 | deband-range=16 221 | 222 | [WEB] 223 | profile-cond=string.match(get("filename", ""), "WEBRip")==nil and (string.match(get("filename", ""), "WEB")~=nil or string.match(get("filename", ""), "%.web%.")~=nil) 224 | profile-restore=copy-equal 225 | deband 226 | deband-iterations=2 227 | deband-threshold=35 228 | deband-range=20 229 | 230 | [Wakfu] 231 | profile-cond=string.match(get("filename", ""), "Wakfu")~=nil and string.match(get("filename", ""), "S03")==nil 232 | profile-restore=copy 233 | # https://nyaa.si/view/1024005#com-1 234 | speed=1.0427094 235 | audio-pitch-correction=no 236 | af="" 237 | 238 | [Gayass] 239 | profile-cond=string.match(get("filename", ""), "%[Anonymous%] Code Geass")~=nil 240 | profile-restore=copy 241 | sub-ass-force-style=Default.Fontsize=47,Default.MarginL=40,Default.MarginR=40 242 | 243 | [Erai] 244 | profile-cond=string.match(get("filename", ""), "Erai%-raws")~=nil or string.match(get("filename", ""), "Intervención")~=nil 245 | profile-restore=copy 246 | sub-ass-force-style=ScaledBorderAndShadow=yes,Default.Shadow=0,Default - Top.Shadow=0,Default_Top.Shadow=0,Italics_top.Shadow=0,Main_Top.Shadow=0,Main - Copia.Shadow=0,Gen_Main.Shadow=0,Gen_Italics.Shadow=0,Italique.Shadow=0,TiretsDefault.Shadow=0,DefaultLow.Shadow=0,main.Shadow=0,Main.Shadow=0,Main-Top.Shadow=0,Main Dialogue.Shadow=0,Main Dialogue Top.Shadow=0,top.Shadow=0,italics.Shadow=0,italicstop.Shadow=0,Flashback.Shadow=0,Flashback Italics.Shadow=0,Flashback_Italics.Shadow=0,flashback.Shadow=0,flashback italics.Shadow=0,flashbacktop.Shadow=0,flashbackitalicstop.Shadow=0,On Top.Shadow=0,Top.Shadow=0,Top Italics.Shadow=0,Italics.Shadow=0,DCMain.Shadow=0,DCItalic.Shadow=0,Narration.Shadow=0,internal/narrator.Shadow=0,internal/narrator top.Shadow=0,flashbackinternal.Shadow=0,Default.Outline=1.3,Default - Top.Outline=1.3,Default_Top.Outline=1.3,Italics_top.Outline=1.3,Main_Top.Outline=1.3,Main - Copia.Outline=1.3,Gen_Main.Outline=1.3,Gen_Italics.Outline=1.3,Italique.Outline=1.3,TiretsDefault.Outline=1.3,DefaultLow.Outline=1.3,main.Outline=1.3,Main.Outline=1.3,Main-Top.Outline=1.3,Main Dialogue.Outline=1.3,Main Dialogue Top.Outline=1.3,top.Outline=1.3,italics.Outline=1.3,italicstop.Outline=1.3,Flashback.Outline=1.3,Flashback Italics.Outline=1.3,Flashback_Italics.Outline=1.3,flashback.Outline=1.3,flashback italics.Outline=1.3,flashbacktop.Outline=1.3,flashbackitalicstop.Outline=1.3,On Top.Outline=1.3,Top.Outline=1.3,Top Italics.Outline=1.3,Italics.Outline=1.3,DCMain.Outline=1.3,DCItalic.Outline=1.3,Narration.Outline=1.3,internal/narrator.Outline=1.3,internal/narrator top.Outline=1.3,flashbackinternal.Outline=1.3,Default.FontName=Roboto Medium,Default - Top.FontName=Roboto Medium,Default_Top.FontName=Roboto Medium,Italics_top.FontName=Roboto Medium,Main_Top.FontName=Roboto Medium,Main - Copia.FontName=Roboto Medium,Gen_Main.FontName=Roboto Medium,Gen_Italics.FontName=Roboto Medium,Italique.FontName=Roboto Medium,TiretsDefault.FontName=Roboto Medium,DefaultLow.FontName=Roboto Medium,main.FontName=Roboto Medium,Main.FontName=Roboto Medium,Main-Top.FontName=Roboto Medium,Main Dialogue.FontName=Roboto Medium,Main Dialogue Top.FontName=Roboto Medium,top.FontName=Roboto Medium,italics.FontName=Roboto Medium,italicstop.FontName=Roboto Medium,Flashback.FontName=Roboto Medium,Flashback Italics.FontName=Roboto Medium,Flashback_Italics.FontName=Roboto Medium,flashback.FontName=Roboto Medium,flashback italics.FontName=Roboto Medium,flashbacktop.FontName=Roboto Medium,flashbackitalicstop.FontName=Roboto Medium,On Top.FontName=Roboto Medium,Top.FontName=Roboto Medium,Top Italics.FontName=Roboto Medium,Italics.FontName=Roboto Medium,DCMain.FontName=Roboto Medium,DCItalic.FontName=Roboto Medium,Narration.FontName=Roboto Medium,internal/narrator.FontName=Roboto Medium,internal/narrator top.FontName=Roboto Medium,flashbackinternal.FontName=Roboto Medium,Default.FontSize=26,Default - Top.FontSize=26,Default_Top.FontSize=26,Italics_top.FontSize=26,Main_Top.FontSize=26,Main - Copia.FontSize=26,Gen_Main.FontSize=26,Gen_Italics.FontSize=26,Italique.FontSize=26,TiretsDefault.FontSize=26,DefaultLow.FontSize=26,main.FontSize=26,Main.FontSize=26,Main-Top.FontSize=26,Main Dialogue.FontSize=26,Main Dialogue Top.FontSize=26,top.FontSize=26,italics.FontSize=26,italicstop.FontSize=26,Flashback.FontSize=26,Flashback Italics.FontSize=26,Flashback_Italics.FontSize=26,flashback.FontSize=26,flashback italics.FontSize=26,flashbacktop.FontSize=26,flashbackitalicstop.FontSize=26,On Top.FontSize=26,Top.FontSize=26,Top Italics.FontSize=26,Italics.FontSize=26,DCMain.FontSize=26,DCItalic.FontSize=26,Narration.FontSize=26,internal/narrator.FontSize=26,internal/narrator top.FontSize=26,flashbackinternal.FontSize=26,Default.MarginV=20,Default - Top.MarginV=20,Default_Top.MarginV=20,Italics_top.MarginV=20,Main_Top.MarginV=20,Main - Copia.MarginV=20,Gen_Main.MarginV=20,Gen_Italics.MarginV=20,Italique.MarginV=20,TiretsDefault.MarginV=20,DefaultLow.MarginV=20,main.MarginV=20,Main.MarginV=20,Main-Top.MarginV=20,Main Dialogue.MarginV=20,Main Dialogue Top.MarginV=20,top.MarginV=20,italics.MarginV=20,italicstop.MarginV=20,Flashback.MarginV=20,Flashback Italics.MarginV=20,Flashback_Italics.MarginV=20,flashback.MarginV=20,flashback italics.MarginV=20,flashbacktop.MarginV=20,flashbackitalicstop.MarginV=20,On Top.MarginV=20,Top.MarginV=20,Top Italics.MarginV=20,Italics.MarginV=20,DCMain.MarginV=20,DCItalic.MarginV=20,Narration.MarginV=20,internal/narrator.MarginV=20,internal/narrator top.MarginV=20,flashbackinternal.MarginV=20,Default.Bold=0,Default - Top.Bold=0,Default_Top.Bold=0,Italics_top.Bold=0,Main_Top.Bold=0,Main - Copia.Bold=0,Gen_Main.Bold=0,Gen_Italics.Bold=0,Italique.Bold=0,TiretsDefault.Bold=0,DefaultLow.Bold=0,main.Bold=0,Main.Bold=0,Main-Top.Bold=0,Main Dialogue.Bold=0,Main Dialogue Top.Bold=0,top.Bold=0,italics.Bold=0,italicstop.Bold=0,Flashback.Bold=0,Flashback Italics.Bold=0,Flashback_Italics.Bold=0,flashback.Bold=0,flashback italics.Bold=0,flashbacktop.Bold=0,flashbackitalicstop.Bold=0,On Top.Bold=0,Top.Bold=0,Top Italics.Bold=0,Italics.Bold=0,DCMain.Bold=0,DCItalic.Bold=0,Narration.Bold=0,internal/narrator.Bold=0,internal/narrator top.Bold=0,flashbackinternal.Bold=0 247 | profile=WEB 248 | 249 | [SubsPlease] 250 | profile-cond=string.match(get("filename", ""), "SubsPlease")~=nil 251 | profile-restore=copy 252 | sub-ass-force-style=Default.MarginV=20,Default - Top.MarginV=20,Default_Top.MarginV=20,Italics_top.MarginV=20,Main_Top.MarginV=20,Main - Copia.MarginV=20,Gen_Main.MarginV=20,Gen_Italics.MarginV=20,Italique.MarginV=20,TiretsDefault.MarginV=20,DefaultLow.MarginV=20,main.MarginV=20,Main.MarginV=20,Main-Top.MarginV=20,Main Dialogue.MarginV=20,Main Dialogue Top.MarginV=20,top.MarginV=20,italics.MarginV=20,italicstop.MarginV=20,Flashback.MarginV=20,Flashback Italics.MarginV=20,Flashback_Italics.MarginV=20,flashback.MarginV=20,flashback italics.MarginV=20,flashbacktop.MarginV=20,flashbackitalicstop.MarginV=20,On Top.MarginV=20,Top.MarginV=20,Top Italics.MarginV=20,Italics.MarginV=20,DCMain.MarginV=20,DCItalic.MarginV=20,Narration.MarginV=20,internal/narrator.MarginV=20,internal/narrator top.MarginV=20,flashbackinternal.MarginV=20,Default.Shadow=0,Default - Top.Shadow=0,Default_Top.Shadow=0,Italics_top.Shadow=0,Main_Top.Shadow=0,Main - Copia.Shadow=0,Gen_Main.Shadow=0,Gen_Italics.Shadow=0,Italique.Shadow=0,TiretsDefault.Shadow=0,DefaultLow.Shadow=0,main.Shadow=0,Main.Shadow=0,Main-Top.Shadow=0,Main Dialogue.Shadow=0,Main Dialogue Top.Shadow=0,top.Shadow=0,italics.Shadow=0,italicstop.Shadow=0,Flashback.Shadow=0,Flashback Italics.Shadow=0,Flashback_Italics.Shadow=0,flashback.Shadow=0,flashback italics.Shadow=0,flashbacktop.Shadow=0,flashbackitalicstop.Shadow=0,On Top.Shadow=0,Top.Shadow=0,Top Italics.Shadow=0,Italics.Shadow=0,DCMain.Shadow=0,DCItalic.Shadow=0,Narration.Shadow=0,internal/narrator.Shadow=0,internal/narrator top.Shadow=0,flashbackinternal.Shadow=0,Default.Outline=1.3,Default - Top.Outline=1.3,Default_Top.Outline=1.3,Italics_top.Outline=1.3,Main_Top.Outline=1.3,Main - Copia.Outline=1.3,Gen_Main.Outline=1.3,Gen_Italics.Outline=1.3,Italique.Outline=1.3,TiretsDefault.Outline=1.3,DefaultLow.Outline=1.3,main.Outline=1.3,Main.Outline=1.3,Main-Top.Outline=1.3,Main Dialogue.Outline=1.3,Main Dialogue Top.Outline=1.3,top.Outline=1.3,italics.Outline=1.3,italicstop.Outline=1.3,Flashback.Outline=1.3,Flashback Italics.Outline=1.3,Flashback_Italics.Outline=1.3,flashback.Outline=1.3,flashback italics.Outline=1.3,flashbacktop.Outline=1.3,flashbackitalicstop.Outline=1.3,On Top.Outline=1.3,Top.Outline=1.3,Top Italics.Outline=1.3,Italics.Outline=1.3,DCMain.Outline=1.3,DCItalic.Outline=1.3,Narration.Outline=1.3,internal/narrator.Outline=1.3,internal/narrator top.Outline=1.3,flashbackinternal.Outline=1.3,Default.OutlineColour=&H00000000,Default - Top.OutlineColour=&H00000000,Default_Top.OutlineColour=&H00000000,Italics_top.OutlineColour=&H00000000,Main_Top.OutlineColour=&H00000000,Main - Copia.OutlineColour=&H00000000,Gen_Main.OutlineColour=&H00000000,Gen_Italics.OutlineColour=&H00000000,Italique.OutlineColour=&H00000000,TiretsDefault.OutlineColour=&H00000000,DefaultLow.OutlineColour=&H00000000,main.OutlineColour=&H00000000,Main.OutlineColour=&H00000000,Main-Top.OutlineColour=&H00000000,Main Dialogue.OutlineColour=&H00000000,Main Dialogue Top.OutlineColour=&H00000000,top.OutlineColour=&H00000000,italics.OutlineColour=&H00000000,italicstop.OutlineColour=&H00000000,Flashback.OutlineColour=&H00000000,Flashback Italics.OutlineColour=&H00000000,Flashback_Italics.OutlineColour=&H00000000,flashback.OutlineColour=&H00000000,flashback italics.OutlineColour=&H00000000,flashbacktop.OutlineColour=&H00000000,flashbackitalicstop.OutlineColour=&H00000000,On Top.OutlineColour=&H00000000,Top.OutlineColour=&H00000000,Top Italics.OutlineColour=&H00000000,Italics.OutlineColour=&H00000000,DCMain.OutlineColour=&H00000000,DCItalic.OutlineColour=&H00000000,Narration.OutlineColour=&H00000000,internal/narrator.OutlineColour=&H00000000,internal/narrator top.OutlineColour=&H00000000,flashbackinternal.OutlineColour=&H00000000,Default.FontName=Roboto Medium,Default - Top.FontName=Roboto Medium,Default_Top.FontName=Roboto Medium,Italics_top.FontName=Roboto Medium,Main_Top.FontName=Roboto Medium,Main - Copia.FontName=Roboto Medium,Gen_Main.FontName=Roboto Medium,Gen_Italics.FontName=Roboto Medium,Italique.FontName=Roboto Medium,TiretsDefault.FontName=Roboto Medium,DefaultLow.FontName=Roboto Medium,main.FontName=Roboto Medium,Main.FontName=Roboto Medium,Main-Top.FontName=Roboto Medium,Main Dialogue.FontName=Roboto Medium,Main Dialogue Top.FontName=Roboto Medium,top.FontName=Roboto Medium,italics.FontName=Roboto Medium,italicstop.FontName=Roboto Medium,Flashback.FontName=Roboto Medium,Flashback Italics.FontName=Roboto Medium,Flashback_Italics.FontName=Roboto Medium,flashback.FontName=Roboto Medium,flashback italics.FontName=Roboto Medium,flashbacktop.FontName=Roboto Medium,flashbackitalicstop.FontName=Roboto Medium,On Top.FontName=Roboto Medium,Top.FontName=Roboto Medium,Top Italics.FontName=Roboto Medium,Italics.FontName=Roboto Medium,DCMain.FontName=Roboto Medium,DCItalic.FontName=Roboto Medium,Narration.FontName=Roboto Medium,internal/narrator.FontName=Roboto Medium,internal/narrator top.FontName=Roboto Medium,flashbackinternal.FontName=Roboto Medium,Default.FontSize=26,Default - Top.FontSize=26,Default_Top.FontSize=26,Italics_top.FontSize=26,Main_Top.FontSize=26,Main - Copia.FontSize=26,Gen_Main.FontSize=26,Gen_Italics.FontSize=26,Italique.FontSize=26,TiretsDefault.FontSize=26,DefaultLow.FontSize=26,main.FontSize=26,Main.FontSize=26,Main-Top.FontSize=26,Main Dialogue.FontSize=26,Main Dialogue Top.FontSize=26,top.FontSize=26,italics.FontSize=26,italicstop.FontSize=26,Flashback.FontSize=26,Flashback Italics.FontSize=26,Flashback_Italics.FontSize=26,flashback.FontSize=26,flashback italics.FontSize=26,flashbacktop.FontSize=26,flashbackitalicstop.FontSize=26,On Top.FontSize=26,Top.FontSize=26,Top Italics.FontSize=26,Italics.FontSize=26,DCMain.FontSize=26,DCItalic.FontSize=26,Narration.FontSize=26,internal/narrator.FontSize=26,internal/narrator top.FontSize=26,flashbackinternal.FontSize=26 253 | profile=WEB 254 | 255 | [HorribleSubs-safe] 256 | profile-cond=string.match(get("filename", ""), "HorribleSubs")~=nil 257 | profile-restore=copy 258 | sub-ass-force-style=ScaledBorderAndShadow=yes,OS.FontName=Arial,B1.FontName=Arial,Default.FontName=Roboto Medium,Default - Top.FontName=Roboto Medium,Default_Top.FontName=Roboto Medium,Italics_top.FontName=Roboto Medium,Main_Top.FontName=Roboto Medium,Main - Copia.FontName=Roboto Medium,Gen_Main.FontName=Roboto Medium,Gen_Italics.FontName=Roboto Medium,Italique.FontName=Roboto Medium,TiretsDefault.FontName=Roboto Medium,DefaultLow.FontName=Roboto Medium,main.FontName=Roboto Medium,Main.FontName=Roboto Medium,Main-Top.FontName=Roboto Medium,Main Dialogue.FontName=Roboto Medium,Main Dialogue Top.FontName=Roboto Medium,top.FontName=Roboto Medium,italics.FontName=Roboto Medium,italicstop.FontName=Roboto Medium,Flashback.FontName=Roboto Medium,Flashback Italics.FontName=Roboto Medium,Flashback_Italics.FontName=Roboto Medium,flashback.FontName=Roboto Medium,flashback italics.FontName=Roboto Medium,flashbacktop.FontName=Roboto Medium,flashbackitalicstop.FontName=Roboto Medium,On Top.FontName=Roboto Medium,Top.FontName=Roboto Medium,Top Italics.FontName=Roboto Medium,Italics.FontName=Roboto Medium,DCMain.FontName=Roboto Medium,DCItalic.FontName=Roboto Medium,Narration.FontName=Roboto Medium,internal/narrator.FontName=Roboto Medium,internal/narrator top.FontName=Roboto Medium,flashbackinternal.FontName=Roboto Medium,Default.Shadow=0,Default - Top.Shadow=0,Default_Top.Shadow=0,Italics_top.Shadow=0,Main_Top.Shadow=0,Main - Copia.Shadow=0,Gen_Main.Shadow=0,Gen_Italics.Shadow=0,Italique.Shadow=0,TiretsDefault.Shadow=0,DefaultLow.Shadow=0,main.Shadow=0,Main.Shadow=0,Main-Top.Shadow=0,Main Dialogue.Shadow=0,Main Dialogue Top.Shadow=0,top.Shadow=0,italics.Shadow=0,italicstop.Shadow=0,Flashback.Shadow=0,Flashback Italics.Shadow=0,Flashback_Italics.Shadow=0,flashback.Shadow=0,flashback italics.Shadow=0,flashbacktop.Shadow=0,flashbackitalicstop.Shadow=0,On Top.Shadow=0,Top.Shadow=0,Top Italics.Shadow=0,Italics.Shadow=0,DCMain.Shadow=0,DCItalic.Shadow=0,Narration.Shadow=0,internal/narrator.Shadow=0,internal/narrator top.Shadow=0,flashbackinternal.Shadow=0,Default.OutlineColour=&H00000000,Default - Top.OutlineColour=&H00000000,Default_Top.OutlineColour=&H00000000,Italics_top.OutlineColour=&H00000000,Main_Top.OutlineColour=&H00000000,Main - Copia.OutlineColour=&H00000000,Gen_Main.OutlineColour=&H00000000,Gen_Italics.OutlineColour=&H00000000,Italique.OutlineColour=&H00000000,TiretsDefault.OutlineColour=&H00000000,DefaultLow.OutlineColour=&H00000000,main.OutlineColour=&H00000000,Main.OutlineColour=&H00000000,Main-Top.OutlineColour=&H00000000,Main Dialogue.OutlineColour=&H00000000,Main Dialogue Top.OutlineColour=&H00000000,top.OutlineColour=&H00000000,italics.OutlineColour=&H00000000,italicstop.OutlineColour=&H00000000,Flashback.OutlineColour=&H00000000,Flashback Italics.OutlineColour=&H00000000,Flashback_Italics.OutlineColour=&H00000000,flashback.OutlineColour=&H00000000,flashback italics.OutlineColour=&H00000000,flashbacktop.OutlineColour=&H00000000,flashbackitalicstop.OutlineColour=&H00000000,On Top.OutlineColour=&H00000000,Top.OutlineColour=&H00000000,Top Italics.OutlineColour=&H00000000,Italics.OutlineColour=&H00000000,DCMain.OutlineColour=&H00000000,DCItalic.OutlineColour=&H00000000,Narration.OutlineColour=&H00000000,internal/narrator.OutlineColour=&H00000000,internal/narrator top.OutlineColour=&H00000000,flashbackinternal.OutlineColour=&H00000000,Default.MarginL=28,Default - Top.MarginL=28,Default_Top.MarginL=28,Italics_top.MarginL=28,Main_Top.MarginL=28,Main - Copia.MarginL=28,Gen_Main.MarginL=28,Gen_Italics.MarginL=28,Italique.MarginL=28,TiretsDefault.MarginL=28,DefaultLow.MarginL=28,main.MarginL=28,Main.MarginL=28,Main-Top.MarginL=28,Main Dialogue.MarginL=28,Main Dialogue Top.MarginL=28,top.MarginL=28,italics.MarginL=28,italicstop.MarginL=28,Flashback.MarginL=28,Flashback Italics.MarginL=28,Flashback_Italics.MarginL=28,flashback.MarginL=28,flashback italics.MarginL=28,flashbacktop.MarginL=28,flashbackitalicstop.MarginL=28,On Top.MarginL=28,Top.MarginL=28,Top Italics.MarginL=28,Italics.MarginL=28,DCMain.MarginL=28,DCItalic.MarginL=28,Narration.MarginL=28,internal/narrator.MarginL=28,internal/narrator top.MarginL=28,flashbackinternal.MarginL=28,Default.MarginR=28,Default - Top.MarginR=28,Default_Top.MarginR=28,Italics_top.MarginR=28,Main_Top.MarginR=28,Main - Copia.MarginR=28,Gen_Main.MarginR=28,Gen_Italics.MarginR=28,Italique.MarginR=28,TiretsDefault.MarginR=28,DefaultLow.MarginR=28,main.MarginR=28,Main.MarginR=28,Main-Top.MarginR=28,Main Dialogue.MarginR=28,Main Dialogue Top.MarginR=28,top.MarginR=28,italics.MarginR=28,italicstop.MarginR=28,Flashback.MarginR=28,Flashback Italics.MarginR=28,Flashback_Italics.MarginR=28,flashback.MarginR=28,flashback italics.MarginR=28,flashbacktop.MarginR=28,flashbackitalicstop.MarginR=28,On Top.MarginR=28,Top.MarginR=28,Top Italics.MarginR=28,Italics.MarginR=28,DCMain.MarginR=28,DCItalic.MarginR=28,Narration.MarginR=28,internal/narrator.MarginR=28,internal/narrator top.MarginR=28,flashbackinternal.MarginR=28,Default.FontSize=34.8,Default - Top.FontSize=34.8,Default_Top.FontSize=34.8,Italics_top.FontSize=34.8,Main_Top.FontSize=34.8,Main - Copia.FontSize=34.8,Gen_Main.FontSize=34.8,Gen_Italics.FontSize=34.8,Italique.FontSize=34.8,TiretsDefault.FontSize=34.8,DefaultLow.FontSize=34.8,main.FontSize=34.8,Main.FontSize=34.8,Main-Top.FontSize=34.8,Main Dialogue.FontSize=34.8,Main Dialogue Top.FontSize=34.8,top.FontSize=34.8,italics.FontSize=34.8,italicstop.FontSize=34.8,Flashback.FontSize=34.8,Flashback Italics.FontSize=34.8,Flashback_Italics.FontSize=34.8,flashback.FontSize=34.8,flashback italics.FontSize=34.8,flashbacktop.FontSize=34.8,flashbackitalicstop.FontSize=34.8,On Top.FontSize=34.8,Top.FontSize=34.8,Top Italics.FontSize=34.8,Italics.FontSize=34.8,DCMain.FontSize=34.8,DCItalic.FontSize=34.8,Narration.FontSize=34.8,internal/narrator.FontSize=34.8,internal/narrator top.FontSize=34.8,flashbackinternal.FontSize=34.8,Default.Bold=0,Default - Top.Bold=0,Default_Top.Bold=0,Italics_top.Bold=0,Main_Top.Bold=0,Main - Copia.Bold=0,Gen_Main.Bold=0,Gen_Italics.Bold=0,Italique.Bold=0,TiretsDefault.Bold=0,DefaultLow.Bold=0,main.Bold=0,Main.Bold=0,Main-Top.Bold=0,Main Dialogue.Bold=0,Main Dialogue Top.Bold=0,top.Bold=0,italics.Bold=0,italicstop.Bold=0,Flashback.Bold=0,Flashback Italics.Bold=0,Flashback_Italics.Bold=0,flashback.Bold=0,flashback italics.Bold=0,flashbacktop.Bold=0,flashbackitalicstop.Bold=0,On Top.Bold=0,Top.Bold=0,Top Italics.Bold=0,Italics.Bold=0,DCMain.Bold=0,DCItalic.Bold=0,Narration.Bold=0,internal/narrator.Bold=0,internal/narrator top.Bold=0,flashbackinternal.Bold=0 259 | profile=WEB 260 | 261 | # To fix typesetting that uses \pos for positioning - can make things more broken than they already are when margins are used for positioning 262 | [HorribleSubs] 263 | profile-restore=copy 264 | sub-ass-force-style=ScaledBorderAndShadow=yes,PlayResX=640,PlayResY=360,MarginL=20,MarginR=20,MarginV=20,B1.FontSize=42,OS.FontSize=18,OS.FontName=Arial,B1.FontName=Arial,Default.FontName=Roboto Medium,Default - Top.FontName=Roboto Medium,Default_Top.FontName=Roboto Medium,Italics_top.FontName=Roboto Medium,Main_Top.FontName=Roboto Medium,Main - Copia.FontName=Roboto Medium,Gen_Main.FontName=Roboto Medium,Gen_Italics.FontName=Roboto Medium,Italique.FontName=Roboto Medium,TiretsDefault.FontName=Roboto Medium,DefaultLow.FontName=Roboto Medium,main.FontName=Roboto Medium,Main.FontName=Roboto Medium,Main-Top.FontName=Roboto Medium,Main Dialogue.FontName=Roboto Medium,Main Dialogue Top.FontName=Roboto Medium,top.FontName=Roboto Medium,italics.FontName=Roboto Medium,italicstop.FontName=Roboto Medium,Flashback.FontName=Roboto Medium,Flashback Italics.FontName=Roboto Medium,Flashback_Italics.FontName=Roboto Medium,flashback.FontName=Roboto Medium,flashback italics.FontName=Roboto Medium,flashbacktop.FontName=Roboto Medium,flashbackitalicstop.FontName=Roboto Medium,On Top.FontName=Roboto Medium,Top.FontName=Roboto Medium,Top Italics.FontName=Roboto Medium,Italics.FontName=Roboto Medium,DCMain.FontName=Roboto Medium,DCItalic.FontName=Roboto Medium,Narration.FontName=Roboto Medium,internal/narrator.FontName=Roboto Medium,internal/narrator top.FontName=Roboto Medium,flashbackinternal.FontName=Roboto Medium,Default.FontSize=26,Default - Top.FontSize=26,Default_Top.FontSize=26,Italics_top.FontSize=26,Main_Top.FontSize=26,Main - Copia.FontSize=26,Gen_Main.FontSize=26,Gen_Italics.FontSize=26,Italique.FontSize=26,TiretsDefault.FontSize=26,DefaultLow.FontSize=26,main.FontSize=26,Main.FontSize=26,Main-Top.FontSize=26,Main Dialogue.FontSize=26,Main Dialogue Top.FontSize=26,top.FontSize=26,italics.FontSize=26,italicstop.FontSize=26,Flashback.FontSize=26,Flashback Italics.FontSize=26,Flashback_Italics.FontSize=26,flashback.FontSize=26,flashback italics.FontSize=26,flashbacktop.FontSize=26,flashbackitalicstop.FontSize=26,On Top.FontSize=26,Top.FontSize=26,Top Italics.FontSize=26,Italics.FontSize=26,DCMain.FontSize=26,DCItalic.FontSize=26,Narration.FontSize=26,internal/narrator.FontSize=26,internal/narrator top.FontSize=26,flashbackinternal.FontSize=26,Default.Shadow=0,Default - Top.Shadow=0,Default_Top.Shadow=0,Italics_top.Shadow=0,Main_Top.Shadow=0,Main - Copia.Shadow=0,Gen_Main.Shadow=0,Gen_Italics.Shadow=0,Italique.Shadow=0,TiretsDefault.Shadow=0,DefaultLow.Shadow=0,main.Shadow=0,Main.Shadow=0,Main-Top.Shadow=0,Main Dialogue.Shadow=0,Main Dialogue Top.Shadow=0,top.Shadow=0,italics.Shadow=0,italicstop.Shadow=0,Flashback.Shadow=0,Flashback Italics.Shadow=0,Flashback_Italics.Shadow=0,flashback.Shadow=0,flashback italics.Shadow=0,flashbacktop.Shadow=0,flashbackitalicstop.Shadow=0,On Top.Shadow=0,Top.Shadow=0,Top Italics.Shadow=0,Italics.Shadow=0,DCMain.Shadow=0,DCItalic.Shadow=0,Narration.Shadow=0,internal/narrator.Shadow=0,internal/narrator top.Shadow=0,flashbackinternal.Shadow=0,Default.Outline=1.3,Default - Top.Outline=1.3,Default_Top.Outline=1.3,Italics_top.Outline=1.3,Main_Top.Outline=1.3,Main - Copia.Outline=1.3,Gen_Main.Outline=1.3,Gen_Italics.Outline=1.3,Italique.Outline=1.3,TiretsDefault.Outline=1.3,DefaultLow.Outline=1.3,main.Outline=1.3,Main.Outline=1.3,Main-Top.Outline=1.3,Main Dialogue.Outline=1.3,Main Dialogue Top.Outline=1.3,top.Outline=1.3,italics.Outline=1.3,italicstop.Outline=1.3,Flashback.Outline=1.3,Flashback Italics.Outline=1.3,Flashback_Italics.Outline=1.3,flashback.Outline=1.3,flashback italics.Outline=1.3,flashbacktop.Outline=1.3,flashbackitalicstop.Outline=1.3,On Top.Outline=1.3,Top.Outline=1.3,Top Italics.Outline=1.3,Italics.Outline=1.3,DCMain.Outline=1.3,DCItalic.Outline=1.3,Narration.Outline=1.3,internal/narrator.Outline=1.3,internal/narrator top.Outline=1.3,flashbackinternal.Outline=1.3,Default.OutlineColour=&H00000000,Default - Top.OutlineColour=&H00000000,Default_Top.OutlineColour=&H00000000,Italics_top.OutlineColour=&H00000000,Main_Top.OutlineColour=&H00000000,Main - Copia.OutlineColour=&H00000000,Gen_Main.OutlineColour=&H00000000,Gen_Italics.OutlineColour=&H00000000,Italique.OutlineColour=&H00000000,TiretsDefault.OutlineColour=&H00000000,DefaultLow.OutlineColour=&H00000000,main.OutlineColour=&H00000000,Main.OutlineColour=&H00000000,Main-Top.OutlineColour=&H00000000,Main Dialogue.OutlineColour=&H00000000,Main Dialogue Top.OutlineColour=&H00000000,top.OutlineColour=&H00000000,italics.OutlineColour=&H00000000,italicstop.OutlineColour=&H00000000,Flashback.OutlineColour=&H00000000,Flashback Italics.OutlineColour=&H00000000,Flashback_Italics.OutlineColour=&H00000000,flashback.OutlineColour=&H00000000,flashback italics.OutlineColour=&H00000000,flashbacktop.OutlineColour=&H00000000,flashbackitalicstop.OutlineColour=&H00000000,On Top.OutlineColour=&H00000000,Top.OutlineColour=&H00000000,Top Italics.OutlineColour=&H00000000,Italics.OutlineColour=&H00000000,DCMain.OutlineColour=&H00000000,DCItalic.OutlineColour=&H00000000,Narration.OutlineColour=&H00000000,internal/narrator.OutlineColour=&H00000000,internal/narrator top.OutlineColour=&H00000000,flashbackinternal.OutlineColour=&H00000000,Default.Bold=0,Default - Top.Bold=0,Default_Top.Bold=0,Italics_top.Bold=0,Main_Top.Bold=0,Main - Copia.Bold=0,Gen_Main.Bold=0,Gen_Italics.Bold=0,Italique.Bold=0,TiretsDefault.Bold=0,DefaultLow.Bold=0,main.Bold=0,Main.Bold=0,Main-Top.Bold=0,Main Dialogue.Bold=0,Main Dialogue Top.Bold=0,top.Bold=0,italics.Bold=0,italicstop.Bold=0,Flashback.Bold=0,Flashback Italics.Bold=0,Flashback_Italics.Bold=0,flashback.Bold=0,flashback italics.Bold=0,flashbacktop.Bold=0,flashbackitalicstop.Bold=0,On Top.Bold=0,Top.Bold=0,Top Italics.Bold=0,Italics.Bold=0,DCMain.Bold=0,DCItalic.Bold=0,Narration.Bold=0,internal/narrator.Bold=0,internal/narrator top.Bold=0,flashbackinternal.Bold=0 265 | profile=WEB 266 | -------------------------------------------------------------------------------- /script-opts/autocrop.conf: -------------------------------------------------------------------------------- 1 | auto=no 2 | -------------------------------------------------------------------------------- /script-opts/autoload.conf: -------------------------------------------------------------------------------- 1 | images=no 2 | -------------------------------------------------------------------------------- /script-opts/celebi.conf: -------------------------------------------------------------------------------- 1 | volume=yes 2 | -------------------------------------------------------------------------------- /script-opts/coverart.conf: -------------------------------------------------------------------------------- 1 | # https://pixabay.com/photos/blank-vinyl-record-jacket-record-2924018/ 2 | placeholder=~~/script-opts/coverart.jpg 3 | load_extra_files=no 4 | skip_coverart=yes 5 | preload=yes 6 | use_albumart_flag=yes 7 | prefer_embedded=yes 8 | any_image_fallback=yes 9 | -------------------------------------------------------------------------------- /script-opts/coverart.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/po5/mpv-config/47b54f59fa7c1cc38ce1eab8f1617d81600d6fa5/script-opts/coverart.jpg -------------------------------------------------------------------------------- /script-opts/evafast.conf: -------------------------------------------------------------------------------- 1 | show_speed_toggled=no 2 | -------------------------------------------------------------------------------- /script-opts/groupwatch_sync.conf: -------------------------------------------------------------------------------- 1 | max_speed=2 2 | show_group_pos=yes 3 | -------------------------------------------------------------------------------- /script-opts/pointer-event.conf: -------------------------------------------------------------------------------- 1 | left_double=cycle fullscreen 2 | -------------------------------------------------------------------------------- /script-opts/trackselect.conf: -------------------------------------------------------------------------------- 1 | enabled=no 2 | force=yes 3 | smart_keep=yes 4 | preferred_audio_channels=2/6/1 5 | -------------------------------------------------------------------------------- /script-opts/uosc.conf: -------------------------------------------------------------------------------- 1 | timeline_style=bar 2 | timeline_size_min=6 3 | timeline_persistency= 4 | 5 | timeline_chapters_opacity=0.3 6 | 7 | controls=space,speed,space 8 | 9 | destination_time=total 10 | 11 | volume_border=1.2 12 | timeline_border=1.2 13 | 14 | top_bar_size=40 15 | top_bar_size_fullscreen=60 16 | 17 | window_border_size=0 18 | 19 | pause_indicator=manual 20 | 21 | default_directory=. 22 | 23 | #chapter_ranges=sponsor segment start<00aa00:0.5>sponsor segment end, sponsor start<00aa00:0.5>sponsor end, preview segment start<9944AA:0.5>preview segment end, submitted segment start<33AADD:0.5>submitted segment end, intro segment startintro segment end, outro segment startoutro segment end, interaction segment start<808000:0.5>interaction segment end, selfpromo segment start<00ffff:0.5>selfpromo segment end, ^op |^op$| op$|^opening |opening$<968638:0.5>.*, ^ed |^ed$| ed$|^ending |ending$<968638:0.5>.*|{eof} 24 | chapter_ranges=openings:30abf964,intros:30abf964,endings:30abf964,ads:00aa00 25 | 26 | 27 | languages=en 28 | 29 | foreground=FFFBFE 30 | foreground_text=1C1B1F 31 | background=1C1B1F 32 | background_text=FFFBFE 33 | curtain_opacity=0.3 34 | menu_item_height=42 35 | menu_item_height_fullscreen=60 36 | -------------------------------------------------------------------------------- /script-opts/webm.conf: -------------------------------------------------------------------------------- 1 | run_detached=yes 2 | target_filesize=7500 3 | output_directory=~/Documents/mpv/ 4 | output_template=%{?demuxer-via-network==yes:${media-title}}%{?demuxer-via-network==yes:_${filename/no-ext}}%{!demuxer-via-network==yes:${filename}}_%wH%wM%wS.%wT-%mH%mM%mS.%mT 5 | -------------------------------------------------------------------------------- /scripts/README.md: -------------------------------------------------------------------------------- 1 | Use [mpv_manager](https://github.com/po5/mpv_manager) to retrieve scripts and delete this file. -------------------------------------------------------------------------------- /shaders/README.md: -------------------------------------------------------------------------------- 1 | Use [mpv_manager](https://github.com/po5/mpv_manager) to retrieve shaders and delete this file. -------------------------------------------------------------------------------- /shaders/noise-luma-adaptive.glsl: -------------------------------------------------------------------------------- 1 | //!DESC noise (luma, adaptive) 2 | //!HOOK LUMA 3 | //!HOOK RGB 4 | //!BIND HOOKED 5 | //!WIDTH OUTPUT.w 6 | //!HEIGHT OUTPUT.h 7 | 8 | #define STRENGTH 64.0 9 | #define LUMA_SCALING 10.0 10 | 11 | // PRNG taken from mpv's shader 12 | float mod289(float x) { return x - floor(x / 289.0) * 289.0; } 13 | float permute(float x) { return mod289((34.0 * x + 1.0) * x); } 14 | float rand(float x) { return fract(x / 41.0); } 15 | 16 | vec4 hook() { 17 | vec2 uv = HOOKED_pos.xy; 18 | vec4 originalColor = HOOKED_tex(uv); 19 | 20 | float x = dot(originalColor.rgb, vec3(0.2989, 0.5870, 0.1140)); // Convert to luma 21 | float y = LUMA_SCALING * 0.5; // Average luma can't be computed from a shader, fake it... 22 | 23 | // https://blog.kageru.moe/legacy/adaptivegrain.html 24 | float polynomial = 1.0 - ( 25 | 1.124 * x - 9.466 * x * x + 36.624 * x * x * x - 26 | 45.47 * x * x * x * x + 18.188 * x * x * x * x * x 27 | ); 28 | 29 | float exponent = y * y; 30 | float z = pow(polynomial, exponent); 31 | 32 | // Generate noise based on the pixel's position 33 | vec3 _m = vec3(HOOKED_pos, random) + vec3(1.0); 34 | float h = permute(permute(permute(_m.x) + _m.y) + _m.z); 35 | float noise = STRENGTH / 4096.0 * (rand(h) - 0.5); 36 | 37 | // Apply the polynomial to the noise 38 | float scaledNoise = noise * z; 39 | 40 | vec4 resultColor = originalColor + vec4(scaledNoise); 41 | 42 | return resultColor; 43 | } 44 | -------------------------------------------------------------------------------- /vs/chicken.py: -------------------------------------------------------------------------------- 1 | from vapoursynth import core, RGBS, YUV, YUV444PS, YUV444P16, GRAY 2 | 3 | chicken = core.resize.Bicubic(video_in, format=RGBS, matrix_in=1, dither_type="error_diffusion").std.Limiter() 4 | chicken = chicken.fmtc.transfer(transs="srgb", transd="linear", bits=32) 5 | chicken = chicken.resize.Bicubic(format=YUV444PS, matrix=1, dither_type="error_diffusion") 6 | chickeny = chicken.std.ShufflePlanes(0, colorfamily=GRAY) 7 | chickeny = chickeny.chkdr.grain(draft=True, rad=0.015) 8 | chicken = core.std.ShufflePlanes([chickeny, chicken], planes=[0, 1, 2], colorfamily=YUV) 9 | chicken = chicken.resize.Bicubic(format=RGBS) 10 | chicken = core.fmtc.transfer(chicken, transs="linear", transd="srgb") 11 | chicken = chicken.resize.Bicubic(format=YUV444P16, matrix=1, dither_type="error_diffusion") 12 | 13 | chicken.set_output() 14 | -------------------------------------------------------------------------------- /vs/scan_interlaced.py: -------------------------------------------------------------------------------- 1 | from vapoursynth import core 2 | import vsfieldkit 3 | 4 | #vsfieldkit.fill_analog_frame_ends(video_in, luma_splash_radius=2, top_blank_width=0).set_output() 5 | vsfieldkit.scan_interlaced(vsfieldkit.fill_analog_frame_ends(video_in.std.AssumeFPS(fpsnum=25, fpsden=1), luma_splash_radius=2, top_blank_width=0), tff=True, chroma_subsample_scanning="SCAN_UPSAMPLED", decay_factor=0.2).set_output() 6 | --------------------------------------------------------------------------------