Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- mpv -v /home/pont/Downloads/h264_sintel_trailer-1080p.mp4
- [cplayer] Command line options: '-v' '/home/pont/Downloads/h264_sintel_trailer-1080p.mp4'
- [cplayer] mpv 0.20.0 (C) 2000-2016 mpv/MPlayer/mplayer2 projects
- [cplayer] built on Sep 2 2016
- [cplayer] ffmpeg library versions:
- [cplayer] libavutil 55.28.100
- [cplayer] libavcodec 57.48.101
- [cplayer] libavformat 57.41.100
- [cplayer] libswscale 4.1.100
- [cplayer] libavfilter 6.47.100
- [cplayer] libswresample 2.1.100
- [cplayer] ffmpeg version: 3.1.3
- [cplayer]
- [cplayer] Configuration: ./waf configure --prefix=/usr --bindir=/usr/bin --mandir=/usr/share/man --libdir=/usr/lib64 --docdir=/usr/share/doc/packages/mpv --confdir=/etc/mpv --enable-openal --enable-cdda --enable-libmpv-shared --enable-zsh-comp --enable-manpage-build --disable-sdl1 --disable-sdl2 --disable-build-date --disable-debug
- [cplayer] List of enabled features: 52 alsa any-gl asm atomic-builtins atomics audio-input av-avpacket-int64-duration av-new-pixdesc av-pix-fmt-mmal av-subtitle-nopict av-version-info avcodec-chroma-pos-api avcodec-has-codecpar avcodec-new-codec-api avcodec-profile-name avframe-metadata avframe-skip-samples avutil-has-hwcontext avutil-hdr avutil-mastering-metadata caca cdda cplayer dlopen drm dvbin dvdnav dvdread enca encoding fchmod gl gl-x11 glibc-thread-name glob iconv jack jpeg lcms2 libass libass-osd libav libavdevice libavfilter libbluray libdl libm libmpv-shared librt libsmbclient libswresample libv4l2 linux-fstatfs lua nanosleep openal optimize oss-audio oss-audio-native plain-gl posix posix-or-mingw posix-spawn pthreads pulse resampler shm sse4-intrinsics standard-gl subprocess termios tv tv-v4l2 vaapi vaapi-glx vaapi-hwaccel vaapi-x11 vdpau vdpau-gl-x11 vdpau-hwaccel videodev vt.h x11 xext xinerama xrandr xss xv zlib zsh-comp
- [global] config path: '' -> '/home/pont/.config/mpv'
- [global] config path: 'mpv.conf' -> '/home/pont/.config/mpv/mpv.conf'
- [global] config path: 'config' -/-> '/home/pont/.config/mpv/config'
- [global] config path: 'mpv.conf' -/-> '/home/pont/.mpv/mpv.conf'
- [global] config path: 'config' -/-> '/home/pont/.mpv/config'
- [global] config path: 'mpv.conf' -> '/etc/mpv/mpv.conf'
- [global] config path: 'config' -/-> '/etc/mpv/config'
- [cplayer] Reading config file /etc/mpv/mpv.conf
- [cplayer] Reading config file /home/pont/.config/mpv/mpv.conf
- [cplayer] Setting option 'vo' = 'opengl-hq:user-shaders="/home/pont/CrossBilateral.glsl"' (flags = 4)
- [cplayer] Setting option 'v' = '' (flags = 8)
- [global] config path: 'input.conf' -/-> '/home/pont/.config/mpv/input.conf'
- [global] config path: 'input.conf' -/-> '/home/pont/.mpv/input.conf'
- [global] config path: 'input.conf' -> '/etc/mpv/input.conf'
- [global] user path: '/etc/mpv/input.conf' -> '/etc/mpv/input.conf'
- [ifo] Opening /etc/mpv/input.conf
- [ifo/dvdnav] Opening /etc/mpv/input.conf
- [bdmv/bluray] Opening /etc/mpv/input.conf
- [file] Opening /etc/mpv/input.conf
- [file] Stream opened successfully.
- [input] Parsing input config file /etc/mpv/input.conf
- [input] Input config file /etc/mpv/input.conf parsed: 0 binds
- [osc] Loading script @osc.lua...
- [global] config path: 'scripts' -/-> '/home/pont/.config/mpv/scripts'
- [global] config path: 'scripts' -/-> '/home/pont/.mpv/scripts'
- [global] config path: 'scripts' -/-> '/etc/mpv/scripts'
- [osc] loading mp.defaults
- [osc] loading @osc.lua
- [global] config path: 'lua-settings/osc.conf' -/-> '/home/pont/.config/mpv/lua-settings/osc.conf'
- [global] config path: 'lua-settings/osc.conf' -/-> '/home/pont/.mpv/lua-settings/osc.conf'
- [global] config path: 'lua-settings/osc.conf' -/-> '/etc/mpv/lua-settings/osc.conf'
- [osc] lua-settings/osc.conf not found.
- [cplayer] Run command: define-section, flags=0, args=[showhide, mouse_move script-binding osc/__keybinding1
- [cplayer] mouse_leave script-binding osc/__keybinding2
- [cplayer] , force]
- [cplayer] Run command: enable-section, flags=0, args=[showhide, allow-hide-cursor+allow-vo-dragging]
- [cplayer] Run command: define-section, flags=0, args=[input, mouse_btn0 script-binding osc/__keybinding3
- [cplayer] shift+mouse_btn0 script-binding osc/__keybinding4
- [cplayer] mouse_btn2 script-binding osc/__keybinding5
- [cplayer] mouse_btn0_dbl ignore
- [cplayer] shift+mouse_btn0_dbl ignore
- [cplayer] mouse_btn2_dbl ignore
- [cplayer] , force]
- [cplayer] Run command: enable-section, flags=0, args=[input, ]
- [cplayer] Run command: define-section, flags=0, args=[input_osc, del script-binding osc/__keybinding6
- [cplayer] , default]
- [cplayer] Run command: enable-section, flags=0, args=[input_osc, allow-hide-cursor+allow-vo-dragging]
- [cplayer] Run command: define-section, flags=0, args=[input_forced_osc, , force]
- [cplayer] Run command: enable-section, flags=0, args=[input_forced_osc, allow-hide-cursor+allow-vo-dragging]
- [cplayer] Done loading @osc.lua.
- [ytdl_hook] Loading script @ytdl_hook.lua...
- [global] config path: 'scripts' -/-> '/home/pont/.config/mpv/scripts'
- [global] config path: 'scripts' -/-> '/home/pont/.mpv/scripts'
- [global] config path: 'scripts' -/-> '/etc/mpv/scripts'
- [ytdl_hook] loading mp.defaults
- [cplayer] Run command: disable-section, flags=0, args=[input]
- [global] config path: 'fonts' -/-> '/home/pont/.config/mpv/fonts'
- [global] config path: 'fonts' -/-> '/home/pont/.mpv/fonts'
- [global] config path: 'fonts' -/-> '/etc/mpv/fonts'
- [osd/libass] Shaper: FriBidi 0.19.2 (SIMPLE) HarfBuzz-ng 1.1.3 (COMPLEX)
- [global] config path: 'subfont.ttf' -/-> '/home/pont/.config/mpv/subfont.ttf'
- [global] config path: 'subfont.ttf' -/-> '/home/pont/.mpv/subfont.ttf'
- [global] config path: 'subfont.ttf' -/-> '/etc/mpv/subfont.ttf'
- [global] config path: 'fonts.conf' -/-> '/home/pont/.config/mpv/fonts.conf'
- [global] config path: 'fonts.conf' -/-> '/home/pont/.mpv/fonts.conf'
- [global] config path: 'fonts.conf' -/-> '/etc/mpv/fonts.conf'
- [osd/libass] Setting up fonts...
- [ytdl_hook] loading @ytdl_hook.lua
- [cplayer] Run command: hook-add, flags=0, args=[on_load, 1, 10]
- [cplayer] Done loading @ytdl_hook.lua.
- [global] config path: 'scripts' -/-> '/home/pont/.config/mpv/scripts'
- [global] config path: 'scripts' -/-> '/home/pont/.mpv/scripts'
- [global] config path: 'scripts' -/-> '/etc/mpv/scripts'
- [global] config path: 'watch_later' -> '/home/pont/.config/mpv/watch_later'
- [cplayer] Playing: /home/pont/Downloads/h264_sintel_trailer-1080p.mp4
- [cplayer] Running hook: ytdl_hook/on_load
- [osd/libass] Using font provider fontconfig
- [osd/libass] Done.
- [cplayer] Run command: hook-ack, flags=0, args=[on_load]
- [ifo] Opening /home/pont/Downloads/h264_sintel_trailer-1080p.mp4
- [ifo/dvdnav] Opening /home/pont/Downloads/h264_sintel_trailer-1080p.mp4
- [bdmv/bluray] Opening /home/pont/Downloads/h264_sintel_trailer-1080p.mp4
- [file] Opening /home/pont/Downloads/h264_sintel_trailer-1080p.mp4
- [file] Stream opened successfully.
- [demux] Trying demuxers for level=normal.
- [lavf] Found 'mov,mp4,m4a,3gp,3g2,mj2' at score=100 size=2048.
- [lavf] avformat_find_stream_info() finished after 32816 bytes.
- [demux] Detected file format: mov,mp4,m4a,3gp,3g2,mj2 (libavformat)
- [find_files] Loading external files in /home/pont/Downloads/
- [global] config path: 'sub/' -/-> '/home/pont/.config/mpv/sub/'
- [global] config path: 'sub/' -/-> '/home/pont/.mpv/sub/'
- [global] config path: 'sub/' -/-> '/etc/mpv/sub/'
- [global] config path: 'audio/' -/-> '/home/pont/.config/mpv/audio/'
- [global] config path: 'audio/' -/-> '/home/pont/.mpv/audio/'
- [global] config path: 'audio/' -/-> '/etc/mpv/audio/'
- [cplayer] (+) Video --vid=1 (*) (h264)
- [cplayer] (+) Audio --aid=1 --alang=und (*) (aac)
- [display-tags] File tags:
- [display-tags] Artist: Durian Open Movie Team
- [display-tags] Title: Sintel Trailer
- [vo/opengl-hq] Setting option 'user-shaders' = '/home/pont/CrossBilateral.glsl' (flags = 0)
- [vo/opengl-hq] Initializing OpenGL backend 'x11probe'
- [vo/opengl-hq/x11] X11 opening display: :0
- [vo/opengl-hq/x11] X11 running at 1920x1080 (":0" => local display)
- [vo/opengl-hq/x11] Detected wm supports NetWM.
- [vo/opengl-hq/x11] Detected wm supports FULLSCREEN state.
- [vo/opengl-hq/x11] Detected wm supports ABOVE state.
- [vo/opengl-hq/x11] Detected wm supports BELOW state.
- [vo/opengl-hq/x11] Detected wm supports STAYS_ON_TOP state.
- [vo/opengl-hq/x11] Display 0 (HDMI-0): [0, 0, 1920, 1080] @ 60.000000 FPS
- [vo/opengl-hq/x11] Current display FPS: 60.000000
- ATTENTION: default value of option allow_glsl_extension_directive_midshader overridden by environment.
- ATTENTION: default value of option glsl_zero_init overridden by environment.
- ATTENTION: option value of option allow_glsl_extension_directive_midshader ignored.
- ATTENTION: default value of option vblank_mode overridden by environment.
- [vo/opengl-hq] GLX chose FB config with ID 0xec300260
- [vo/opengl-hq] GLX chose visual with ID 0x2ff
- [vo/opengl-hq] Creating OpenGL 3.3 context...
- [vo/opengl-hq] GL_VERSION='4.3 (Core Profile) Mesa 12.1.0-devel (git-c42acd9 pontostroy:X11)'
- [vo/opengl-hq] Detected desktop OpenGL 4.3.
- [vo/opengl-hq] GL_VENDOR='X.Org'
- [vo/opengl-hq] GL_RENDERER='Gallium 0.4 on AMD TAHITI (DRM 2.47.0 / 4.8.0-rc4-3-si, LLVM 4.0.0)'
- [vo/opengl-hq] GL_SHADING_LANGUAGE_VERSION='4.30'
- [vo/opengl-hq] Loaded extension GLX_SGI_swap_control.
- [vo/opengl-hq] Loaded extension GLX_SGI_video_sync.
- [vo/opengl-hq] Loaded extension GL_NV_vdpau_interop.
- [vo/opengl-hq] 16 bit texture depth: 16.
- [vo/opengl-hq] Reported display depth: R=8, G=8, B=8
- [vo/opengl-hq] Testing FBO format 0x805b
- [vo/opengl-hq] Create FBO: 16x16 (16x16)
- [vo/opengl-hq] Using FBO format 0x805b.
- [global] user path: '/home/pont/CrossBilateral.glsl' -> '/home/pont/CrossBilateral.glsl'
- [ifo] Opening /home/pont/CrossBilateral.glsl
- [ifo/dvdnav] Opening /home/pont/CrossBilateral.glsl
- [bdmv/bluray] Opening /home/pont/CrossBilateral.glsl
- [file] Opening /home/pont/CrossBilateral.glsl
- [file] Stream opened successfully.
- [vo/opengl-hq] Assuming 60.000000 FPS for display sync.
- [vd] Container reported FPS: 24.000000
- [vd] Codec list:
- [vd] lavc:h264 - H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
- [vd] Opening video decoder lavc:h264
- [vd] Using software decoding.
- [vd] Detected 4 logical cores.
- [vd] Requesting 5 threads for decoding.
- [vd] Selected video codec: H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 [lavc:h264]
- [vo/opengl-hq/x11] Disabling screensaver.
- [ad] Codec list:
- [ad] lavc:aac - AAC (Advanced Audio Coding)
- [ad] lavc:aac_fixed (aac) - AAC (Advanced Audio Coding)
- [ad] Opening audio decoder lavc:aac
- [ad] Requesting 1 threads for decoding.
- [ad] Selected audio codec: AAC (Advanced Audio Coding) [lavc:aac]
- [cplayer] Starting playback...
- [af] Audio filter chain:
- [af] [in] 48000Hz stereo 2ch floatp
- [af] [out] 48000Hz stereo 2ch floatp
- [af] [ao] 48000Hz stereo 2ch floatp
- [ao] Trying audio driver 'pulse'
- [ao/pulse] requested format: 48000 Hz, stereo channels, floatp
- [ao/pulse] Library version: 9.0.0
- [ao/pulse] Proto: 31
- [ao/pulse] Server proto: 4294967295
- [ao/pulse] Channel layouts:
- [ao/pulse] - #fl
- [ao/pulse] - #fr
- [ao/pulse] - #fc
- [ao/pulse] - #lfe
- [ao/pulse] - #bl
- [ao/pulse] - #br
- [ao/pulse] - #flc
- [ao/pulse] - #frc
- [ao/pulse] - #bc
- [ao/pulse] - #sl
- [ao/pulse] - #sr
- [ao/pulse] - #tc
- [ao/pulse] - #tfl
- [ao/pulse] - #tfc
- [ao/pulse] - #tfr
- [ao/pulse] - #tbl
- [ao/pulse] - #tbc
- [ao/pulse] - #tbr
- [ao/pulse] result: stereo
- [ao/pulse] device buffer: 6000 samples.
- [ao/pulse] using soft-buffer of 9600 samples.
- [cplayer] AO: [pulse] 48000Hz stereo 2ch float
- [cplayer] AO: Description: PulseAudio audio output
- [af] Adding filter lavrresample
- [af] Audio filter chain:
- [af] [in] 48000Hz stereo 2ch floatp
- [af] [lavrresample] 48000Hz stereo 2ch float [a]
- [af] [out] 48000Hz stereo 2ch float
- [af] [ao] 48000Hz stereo 2ch float
- [vd] Decoder format: 1920x1080 [0:1] yuv420p auto/auto CL=mpeg2/4/h264
- [vf] Video filter chain:
- [vf] [in] 1920x1080 yuv420p bt.709/limited CL=mpeg2/4/h264
- [vf] [out] 1920x1080 yuv420p bt.709/limited CL=mpeg2/4/h264
- [cplayer] VO: [opengl-hq] 1920x1080 yuv420p
- [cplayer] VO: Description: Extended OpenGL Renderer (high quality rendering preset)
- [vo/opengl-hq] Resize: 1920x1080
- [vo/opengl-hq] Window size: 1920x1080
- [vo/opengl-hq] Video source: 1920x1080 (1:1)
- [vo/opengl-hq] Video display: (0, 0) 1920x1080 -> (0, 0) 1920x1080
- [vo/opengl-hq] Video scale: 1.000000/1.000000
- [vo/opengl-hq] OSD borders: l=0 t=0 r=0 b=0
- [vo/opengl-hq] Video borders: l=0 t=0 r=0 b=0
- [vo/opengl-hq] Testing FBO format 0x805b
- [vo/opengl-hq] Create FBO: 16x16 (16x16)
- [vo/opengl-hq] Using FBO format 0x805b.
- [vo/opengl-hq] Texture for plane 0: 1920x1080
- [vo/opengl-hq] Texture for plane 1: 960x540
- [vo/opengl-hq] Texture for plane 2: 960x540
- [cplayer] set video colors output-levels=0
- [vo/opengl-hq] Create FBO: 960x540 (960x540)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] [ 1] // merging plane 1 ...
- [vo/opengl-hq] [ 2] color.r = 1.000000 * vec4(texture(texture0, texcoord0)).r;
- [vo/opengl-hq] [ 3] // merging plane 2 ... into 1
- [vo/opengl-hq] [ 4] color.g = 1.000000 * vec4(texture(texture1, texcoord1)).r;
- [vo/opengl-hq] Create FBO: 1920x1080 (1920x1080)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] header:
- [vo/opengl-hq] [ 1] #define HOOKED_raw texture0
- [vo/opengl-hq] [ 2] #define HOOKED_pos texcoord0
- [vo/opengl-hq] [ 3] #define HOOKED_size texture_size0
- [vo/opengl-hq] [ 4] #define HOOKED_rot texture_rot0
- [vo/opengl-hq] [ 5] #define HOOKED_pt pixel_size0
- [vo/opengl-hq] [ 6] #define HOOKED_tex(pos) (1.000000 * vec4(texture(HOOKED_raw, pos)).rgba)
- [vo/opengl-hq] [ 7] #define HOOKED_texOff(off) HOOKED_tex(HOOKED_pos + HOOKED_pt * vec2(off))
- [vo/opengl-hq] [ 8] #define LUMA_raw texture0
- [vo/opengl-hq] [ 9] #define LUMA_pos texcoord0
- [vo/opengl-hq] [ 10] #define LUMA_size texture_size0
- [vo/opengl-hq] [ 11] #define LUMA_rot texture_rot0
- [vo/opengl-hq] [ 12] #define LUMA_pt pixel_size0
- [vo/opengl-hq] [ 13] #define LUMA_tex(pos) (1.000000 * vec4(texture(LUMA_raw, pos)).rgba)
- [vo/opengl-hq] [ 14] #define LUMA_texOff(off) LUMA_tex(LUMA_pos + LUMA_pt * vec2(off))
- [vo/opengl-hq] [ 15] float mod289(float x) { return x - floor(x / 289.0) * 289.0; }
- [vo/opengl-hq] [ 16] float permute(float x) { return mod289((34.0*x + 1.0) * x); }
- [vo/opengl-hq] [ 17] float rand(float x) { return fract(x / 41.0); }
- [vo/opengl-hq] [ 18] vec4 average(float range, inout float h) {
- [vo/opengl-hq] [ 19] float dist = rand(h) * range; h = permute(h);
- [vo/opengl-hq] [ 20] float dir = rand(h) * 6.2831853; h = permute(h);
- [vo/opengl-hq] [ 21] vec2 o = dist * vec2(cos(dir), sin(dir));
- [vo/opengl-hq] [ 22] vec4 ref[4];
- [vo/opengl-hq] [ 23] ref[0] = HOOKED_texOff(vec2( o.x, o.y));
- [vo/opengl-hq] [ 24] ref[1] = HOOKED_texOff(vec2(-o.y, o.x));
- [vo/opengl-hq] [ 25] ref[2] = HOOKED_texOff(vec2(-o.x, -o.y));
- [vo/opengl-hq] [ 26] ref[3] = HOOKED_texOff(vec2( o.y, -o.x));
- [vo/opengl-hq] [ 27] return (ref[0] + ref[1] + ref[2] + ref[3])/4.0;
- [vo/opengl-hq] [ 28] }
- [vo/opengl-hq] body:
- [vo/opengl-hq] [ 1] {
- [vo/opengl-hq] [ 2] vec3 _m = vec3(HOOKED_pos, random) + vec3(1.0);
- [vo/opengl-hq] [ 3] float h = permute(permute(permute(_m.x)+_m.y)+_m.z);
- [vo/opengl-hq] [ 4] color = HOOKED_tex(HOOKED_pos);
- [vo/opengl-hq] [ 5] vec4 avg, diff;
- [vo/opengl-hq] [ 6] avg = average(16.000000, h);
- [vo/opengl-hq] [ 7] diff = abs(color - avg);
- [vo/opengl-hq] [ 8] color = mix(avg, color, greaterThan(diff, vec4(0.003906)));
- [vo/opengl-hq] [ 9] vec3 noise;
- [vo/opengl-hq] [ 10] noise.x = rand(h); h = permute(h);
- [vo/opengl-hq] [ 11] noise.y = rand(h); h = permute(h);
- [vo/opengl-hq] [ 12] noise.z = rand(h); h = permute(h);
- [vo/opengl-hq] [ 13] color.xyz += 0.005859 * (noise - vec3(0.5));
- [vo/opengl-hq] [ 14] }
- [vo/opengl-hq] [ 15] color.g = 0.000000;
- [vo/opengl-hq] [ 16] color.b = 0.000000;
- [vo/opengl-hq] [ 17] color.a = 1.000000;
- [vo/opengl-hq] Create FBO: 960x540 (960x540)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] header:
- [vo/opengl-hq] [ 1] #define HOOKED_raw texture0
- [vo/opengl-hq] [ 2] #define HOOKED_pos texcoord0
- [vo/opengl-hq] [ 3] #define HOOKED_size texture_size0
- [vo/opengl-hq] [ 4] #define HOOKED_rot texture_rot0
- [vo/opengl-hq] [ 5] #define HOOKED_pt pixel_size0
- [vo/opengl-hq] [ 6] #define HOOKED_tex(pos) (1.000000 * vec4(texture(HOOKED_raw, pos)).rgba)
- [vo/opengl-hq] [ 7] #define HOOKED_texOff(off) HOOKED_tex(HOOKED_pos + HOOKED_pt * vec2(off))
- [vo/opengl-hq] [ 8] #define CHROMA_raw texture0
- [vo/opengl-hq] [ 9] #define CHROMA_pos texcoord0
- [vo/opengl-hq] [ 10] #define CHROMA_size texture_size0
- [vo/opengl-hq] [ 11] #define CHROMA_rot texture_rot0
- [vo/opengl-hq] [ 12] #define CHROMA_pt pixel_size0
- [vo/opengl-hq] [ 13] #define CHROMA_tex(pos) (1.000000 * vec4(texture(CHROMA_raw, pos)).rgba)
- [vo/opengl-hq] [ 14] #define CHROMA_texOff(off) CHROMA_tex(CHROMA_pos + CHROMA_pt * vec2(off))
- [vo/opengl-hq] [ 15] float mod289(float x) { return x - floor(x / 289.0) * 289.0; }
- [vo/opengl-hq] [ 16] float permute(float x) { return mod289((34.0*x + 1.0) * x); }
- [vo/opengl-hq] [ 17] float rand(float x) { return fract(x / 41.0); }
- [vo/opengl-hq] [ 18] vec4 average(float range, inout float h) {
- [vo/opengl-hq] [ 19] float dist = rand(h) * range; h = permute(h);
- [vo/opengl-hq] [ 20] float dir = rand(h) * 6.2831853; h = permute(h);
- [vo/opengl-hq] [ 21] vec2 o = dist * vec2(cos(dir), sin(dir));
- [vo/opengl-hq] [ 22] vec4 ref[4];
- [vo/opengl-hq] [ 23] ref[0] = HOOKED_texOff(vec2( o.x, o.y));
- [vo/opengl-hq] [ 24] ref[1] = HOOKED_texOff(vec2(-o.y, o.x));
- [vo/opengl-hq] [ 25] ref[2] = HOOKED_texOff(vec2(-o.x, -o.y));
- [vo/opengl-hq] [ 26] ref[3] = HOOKED_texOff(vec2( o.y, -o.x));
- [vo/opengl-hq] [ 27] return (ref[0] + ref[1] + ref[2] + ref[3])/4.0;
- [vo/opengl-hq] [ 28] }
- [vo/opengl-hq] body:
- [vo/opengl-hq] [ 1] {
- [vo/opengl-hq] [ 2] vec3 _m = vec3(HOOKED_pos, random) + vec3(1.0);
- [vo/opengl-hq] [ 3] float h = permute(permute(permute(_m.x)+_m.y)+_m.z);
- [vo/opengl-hq] [ 4] color = HOOKED_tex(HOOKED_pos);
- [vo/opengl-hq] [ 5] vec4 avg, diff;
- [vo/opengl-hq] [ 6] avg = average(16.000000, h);
- [vo/opengl-hq] [ 7] diff = abs(color - avg);
- [vo/opengl-hq] [ 8] color = mix(avg, color, greaterThan(diff, vec4(0.003906)));
- [vo/opengl-hq] [ 9] vec3 noise;
- [vo/opengl-hq] [ 10] noise.x = rand(h); h = permute(h);
- [vo/opengl-hq] [ 11] noise.y = rand(h); h = permute(h);
- [vo/opengl-hq] [ 12] noise.z = rand(h); h = permute(h);
- [vo/opengl-hq] [ 13] color.xyz += 0.005859 * (noise - vec3(0.5));
- [vo/opengl-hq] [ 14] }
- [vo/opengl-hq] [ 15] color.b = 0.000000;
- [vo/opengl-hq] [ 16] color.a = 1.000000;
- [vo/opengl-hq] Create FBO: 960x1080 (960x1080)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] header:
- [vo/opengl-hq] [ 1] #define HOOKED_raw texture0
- [vo/opengl-hq] [ 2] #define HOOKED_pos texcoord0
- [vo/opengl-hq] [ 3] #define HOOKED_size texture_size0
- [vo/opengl-hq] [ 4] #define HOOKED_rot texture_rot0
- [vo/opengl-hq] [ 5] #define HOOKED_pt pixel_size0
- [vo/opengl-hq] [ 6] #define HOOKED_tex(pos) (1.000000 * vec4(texture(HOOKED_raw, pos)).rgba)
- [vo/opengl-hq] [ 7] #define HOOKED_texOff(off) HOOKED_tex(HOOKED_pos + HOOKED_pt * vec2(off))
- [vo/opengl-hq] [ 8] #define CHROMA_raw texture0
- [vo/opengl-hq] [ 9] #define CHROMA_pos texcoord0
- [vo/opengl-hq] [ 10] #define CHROMA_size texture_size0
- [vo/opengl-hq] [ 11] #define CHROMA_rot texture_rot0
- [vo/opengl-hq] [ 12] #define CHROMA_pt pixel_size0
- [vo/opengl-hq] [ 13] #define CHROMA_tex(pos) (1.000000 * vec4(texture(CHROMA_raw, pos)).rgba)
- [vo/opengl-hq] [ 14] #define CHROMA_texOff(off) CHROMA_tex(CHROMA_pos + CHROMA_pt * vec2(off))
- [vo/opengl-hq] [ 15] #define LUMA_raw texture1
- [vo/opengl-hq] [ 16] #define LUMA_pos texcoord1
- [vo/opengl-hq] [ 17] #define LUMA_size texture_size1
- [vo/opengl-hq] [ 18] #define LUMA_rot texture_rot1
- [vo/opengl-hq] [ 19] #define LUMA_pt pixel_size1
- [vo/opengl-hq] [ 20] #define LUMA_tex(pos) (1.000000 * vec4(texture(LUMA_raw, pos)).rgba)
- [vo/opengl-hq] [ 21] #define LUMA_texOff(off) LUMA_tex(LUMA_pos + LUMA_pt * vec2(off))
- [vo/opengl-hq] [ 22]
- [vo/opengl-hq] [ 23] // -- Downscaling --
- [vo/opengl-hq] [ 24] #define offset (-vec2(0.0, 0.0)*LUMA_size*CHROMA_pt) // -chromaOffset*LUMA_size/CHROMA_size
- [vo/opengl-hq] [ 25]
- [vo/opengl-hq] [ 26] #define dxdy (vec2(CHROMA_pt.x, LUMA_pt.y)) // 1/output_size
- [vo/opengl-hq] [ 27] #define ddxddy (LUMA_pt) // 1/input_size
- [vo/opengl-hq] [ 28]
- [vo/opengl-hq] [ 29] #define factor ((ddxddy*vec2(CHROMA_size.x, LUMA_size.y))[axis])
- [vo/opengl-hq] [ 30]
- [vo/opengl-hq] [ 31] #define axis 0
- [vo/opengl-hq] [ 32]
- [vo/opengl-hq] [ 33] #define Kernel(x) clamp(0.5 + (0.5 - abs(x)) / factor, 0.0, 1.0)
- [vo/opengl-hq] [ 34] #define taps (1.0 + factor)
- [vo/opengl-hq] [ 35]
- [vo/opengl-hq] [ 36] vec4 hook() {
- [vo/opengl-hq] [ 37] // Calculate bounds
- [vo/opengl-hq] [ 38] float low = floor((LUMA_pos - 0.5*taps*dxdy) * LUMA_size - offset + 0.5)[axis];
- [vo/opengl-hq] [ 39] float high = floor((LUMA_pos + 0.5*taps*dxdy) * LUMA_size - offset + 0.5)[axis];
- [vo/opengl-hq] [ 40]
- [vo/opengl-hq] [ 41] float W = 0.0;
- [vo/opengl-hq] [ 42] vec2 avg = vec2(0);
- [vo/opengl-hq] [ 43] vec2 pos = LUMA_pos;
- [vo/opengl-hq] [ 44]
- [vo/opengl-hq] [ 45] for (float k = 0.0; k < high - low; k++) {
- [vo/opengl-hq] [ 46] pos[axis] = ddxddy[axis] * (k + low + 0.5);
- [vo/opengl-hq] [ 47] float rel = (pos[axis] - LUMA_pos[axis])*vec2(CHROMA_size.x, LUMA_size.y)[axis] + offset[axis]*factor;
- [vo/opengl-hq] [ 48] float w = Kernel(rel);
- [vo/opengl-hq] [ 49]
- [vo/opengl-hq] [ 50] avg += w * vec2(textureLod(LUMA_raw, pos, 0.0).x, pow(textureLod(LUMA_raw, pos, 0.0).x, 2.0));
- [vo/opengl-hq] [ 51] W += w;
- [vo/opengl-hq] [ 52] }
- [vo/opengl-hq] [ 53] avg /= vec2(W);
- [vo/opengl-hq] [ 54]
- [vo/opengl-hq] [ 55] return vec4(avg[0], avg[1] - avg[0]*avg[0], 0, 0);
- [vo/opengl-hq] [ 56] }
- [vo/opengl-hq] [ 57]
- [vo/opengl-hq] body:
- [vo/opengl-hq] [ 1] // custom hook
- [vo/opengl-hq] [ 2] color = hook();
- [vo/opengl-hq] Create FBO: 960x540 (960x540)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] header:
- [vo/opengl-hq] [ 1] #define HOOKED_raw texture0
- [vo/opengl-hq] [ 2] #define HOOKED_pos texcoord0
- [vo/opengl-hq] [ 3] #define HOOKED_size texture_size0
- [vo/opengl-hq] [ 4] #define HOOKED_rot texture_rot0
- [vo/opengl-hq] [ 5] #define HOOKED_pt pixel_size0
- [vo/opengl-hq] [ 6] #define HOOKED_tex(pos) (1.000000 * vec4(texture(HOOKED_raw, pos)).rgba)
- [vo/opengl-hq] [ 7] #define HOOKED_texOff(off) HOOKED_tex(HOOKED_pos + HOOKED_pt * vec2(off))
- [vo/opengl-hq] [ 8] #define CHROMA_raw texture0
- [vo/opengl-hq] [ 9] #define CHROMA_pos texcoord0
- [vo/opengl-hq] [ 10] #define CHROMA_size texture_size0
- [vo/opengl-hq] [ 11] #define CHROMA_rot texture_rot0
- [vo/opengl-hq] [ 12] #define CHROMA_pt pixel_size0
- [vo/opengl-hq] [ 13] #define CHROMA_tex(pos) (1.000000 * vec4(texture(CHROMA_raw, pos)).rgba)
- [vo/opengl-hq] [ 14] #define CHROMA_texOff(off) CHROMA_tex(CHROMA_pos + CHROMA_pt * vec2(off))
- [vo/opengl-hq] [ 15] #define DOWNSCALEDLUMAX_raw texture1
- [vo/opengl-hq] [ 16] #define DOWNSCALEDLUMAX_pos texcoord1
- [vo/opengl-hq] [ 17] #define DOWNSCALEDLUMAX_size texture_size1
- [vo/opengl-hq] [ 18] #define DOWNSCALEDLUMAX_rot texture_rot1
- [vo/opengl-hq] [ 19] #define DOWNSCALEDLUMAX_pt pixel_size1
- [vo/opengl-hq] [ 20] #define DOWNSCALEDLUMAX_tex(pos) (1.000000 * vec4(texture(DOWNSCALEDLUMAX_raw, pos)).rgba)
- [vo/opengl-hq] [ 21] #define DOWNSCALEDLUMAX_texOff(off) DOWNSCALEDLUMAX_tex(DOWNSCALEDLUMAX_pos + DOWNSCALEDLUMAX_pt * vec2(off))
- [vo/opengl-hq] [ 22]
- [vo/opengl-hq] [ 23] // -- Downscaling --
- [vo/opengl-hq] [ 24] #define offset (-vec2(0.0, 0.0)*DOWNSCALEDLUMAX_size*CHROMA_pt)
- [vo/opengl-hq] [ 25]
- [vo/opengl-hq] [ 26] #define dxdy (CHROMA_pt)
- [vo/opengl-hq] [ 27] #define ddxddy (DOWNSCALEDLUMAX_pt)
- [vo/opengl-hq] [ 28]
- [vo/opengl-hq] [ 29] #define factor ((ddxddy*CHROMA_size)[axis])
- [vo/opengl-hq] [ 30]
- [vo/opengl-hq] [ 31] #define axis 1
- [vo/opengl-hq] [ 32]
- [vo/opengl-hq] [ 33] #define Kernel(x) clamp(0.5 + (0.5 - abs(x)) / factor, 0.0, 1.0)
- [vo/opengl-hq] [ 34] #define taps (1.0 + factor)
- [vo/opengl-hq] [ 35]
- [vo/opengl-hq] [ 36] vec4 hook() {
- [vo/opengl-hq] [ 37] // Calculate bounds
- [vo/opengl-hq] [ 38] float low = floor((DOWNSCALEDLUMAX_pos - 0.5*taps*dxdy) * DOWNSCALEDLUMAX_size - offset + 0.5)[axis];
- [vo/opengl-hq] [ 39] float high = floor((DOWNSCALEDLUMAX_pos + 0.5*taps*dxdy) * DOWNSCALEDLUMAX_size - offset + 0.5)[axis];
- [vo/opengl-hq] [ 40]
- [vo/opengl-hq] [ 41] float W = 0.0;
- [vo/opengl-hq] [ 42] vec2 avg = vec2(0);
- [vo/opengl-hq] [ 43] vec2 pos = DOWNSCALEDLUMAX_pos;
- [vo/opengl-hq] [ 44]
- [vo/opengl-hq] [ 45] for (float k = 0.0; k < high - low; k++) {
- [vo/opengl-hq] [ 46] pos[axis] = ddxddy[axis] * (k + low + 0.5);
- [vo/opengl-hq] [ 47] float rel = (pos[axis] - DOWNSCALEDLUMAX_pos[axis])*CHROMA_size[axis] + offset[axis]*factor;
- [vo/opengl-hq] [ 48] float w = Kernel(rel);
- [vo/opengl-hq] [ 49]
- [vo/opengl-hq] [ 50] avg += w * vec2(textureLod(DOWNSCALEDLUMAX_raw, pos, 0.0).x, textureLod(DOWNSCALEDLUMAX_raw, pos, 0.0).y + pow(textureLod(DOWNSCALEDLUMAX_raw, pos, 0.0).x, 2.0));
- [vo/opengl-hq] [ 51] W += w;
- [vo/opengl-hq] [ 52] }
- [vo/opengl-hq] [ 53] avg /= vec2(W);
- [vo/opengl-hq] [ 54]
- [vo/opengl-hq] [ 55] return vec4(avg[0], texture(CHROMA_raw, CHROMA_pos).xy, avg[1]-avg[0]*avg[0]);
- [vo/opengl-hq] [ 56] }
- [vo/opengl-hq] [ 57]
- [vo/opengl-hq] body:
- [vo/opengl-hq] [ 1] // custom hook
- [vo/opengl-hq] [ 2] color = hook();
- [vo/opengl-hq] Create FBO: 960x1080 (960x1280)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] [ 1] // upscaling plane 1
- [vo/opengl-hq] [ 2] #undef tex
- [vo/opengl-hq] [ 3] #define tex texture0
- [vo/opengl-hq] [ 4] vec2 pos = texcoord0;
- [vo/opengl-hq] [ 5] vec2 size = texture_size0;
- [vo/opengl-hq] [ 6] vec2 pt = pixel_size0;
- [vo/opengl-hq] [ 7] // pass 1
- [vo/opengl-hq] [ 8] color = vec4(0.0);
- [vo/opengl-hq] [ 9] {
- [vo/opengl-hq] [ 10] vec2 dir = vec2(0.0, 1.0);
- [vo/opengl-hq] [ 11] pt *= dir;
- [vo/opengl-hq] [ 12] float fcoord = dot(fract(pos * size - vec2(0.5)), dir);
- [vo/opengl-hq] [ 13] vec2 base = pos - fcoord * pt - pt * vec2(2.0);
- [vo/opengl-hq] [ 14] vec4 c;
- [vo/opengl-hq] [ 15] float fcoord_lut = LUT_POS(fcoord, 64.0);
- [vo/opengl-hq] [ 16] vec4 c1 = texture(lut, vec2(0.25, fcoord_lut));
- [vo/opengl-hq] [ 17] vec4 c2 = texture(lut, vec2(0.75, fcoord_lut));
- [vo/opengl-hq] [ 18] float weights[6] = float[](c1.r, c1.g, c1.b, c2.r, c2.g, c2.b);
- [vo/opengl-hq] [ 19] // scaler samples
- [vo/opengl-hq] [ 20] c = texture(tex, base + pt * vec2(0.0));
- [vo/opengl-hq] [ 21] color += vec4(weights[0]) * c;
- [vo/opengl-hq] [ 22] c = texture(tex, base + pt * vec2(1.0));
- [vo/opengl-hq] [ 23] color += vec4(weights[1]) * c;
- [vo/opengl-hq] [ 24] c = texture(tex, base + pt * vec2(2.0));
- [vo/opengl-hq] [ 25] color += vec4(weights[2]) * c;
- [vo/opengl-hq] [ 26] c = texture(tex, base + pt * vec2(3.0));
- [vo/opengl-hq] [ 27] color += vec4(weights[3]) * c;
- [vo/opengl-hq] [ 28] c = texture(tex, base + pt * vec2(4.0));
- [vo/opengl-hq] [ 29] color += vec4(weights[4]) * c;
- [vo/opengl-hq] [ 30] c = texture(tex, base + pt * vec2(5.0));
- [vo/opengl-hq] [ 31] color += vec4(weights[5]) * c;
- [vo/opengl-hq] [ 32] }
- [vo/opengl-hq] [ 33] color *= 1.000000;
- [vo/opengl-hq] Create FBO: 1920x1080 (2048x1280)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] [ 1] #undef tex
- [vo/opengl-hq] [ 2] #define tex texture0
- [vo/opengl-hq] [ 3] vec2 pos = texcoord0;
- [vo/opengl-hq] [ 4] vec2 size = texture_size0;
- [vo/opengl-hq] [ 5] vec2 pt = pixel_size0;
- [vo/opengl-hq] [ 6] // pass 2
- [vo/opengl-hq] [ 7] color = vec4(0.0);
- [vo/opengl-hq] [ 8] {
- [vo/opengl-hq] [ 9] vec2 dir = vec2(1.0, 0.0);
- [vo/opengl-hq] [ 10] pt *= dir;
- [vo/opengl-hq] [ 11] float fcoord = dot(fract(pos * size - vec2(0.5)), dir);
- [vo/opengl-hq] [ 12] vec2 base = pos - fcoord * pt - pt * vec2(2.0);
- [vo/opengl-hq] [ 13] vec4 c;
- [vo/opengl-hq] [ 14] float fcoord_lut = LUT_POS(fcoord, 64.0);
- [vo/opengl-hq] [ 15] vec4 c1 = texture(lut, vec2(0.25, fcoord_lut));
- [vo/opengl-hq] [ 16] vec4 c2 = texture(lut, vec2(0.75, fcoord_lut));
- [vo/opengl-hq] [ 17] float weights[6] = float[](c1.r, c1.g, c1.b, c2.r, c2.g, c2.b);
- [vo/opengl-hq] [ 18] // scaler samples
- [vo/opengl-hq] [ 19] c = texture(tex, base + pt * vec2(0.0));
- [vo/opengl-hq] [ 20] color += vec4(weights[0]) * c;
- [vo/opengl-hq] [ 21] c = texture(tex, base + pt * vec2(1.0));
- [vo/opengl-hq] [ 22] color += vec4(weights[1]) * c;
- [vo/opengl-hq] [ 23] c = texture(tex, base + pt * vec2(2.0));
- [vo/opengl-hq] [ 24] color += vec4(weights[2]) * c;
- [vo/opengl-hq] [ 25] c = texture(tex, base + pt * vec2(3.0));
- [vo/opengl-hq] [ 26] color += vec4(weights[3]) * c;
- [vo/opengl-hq] [ 27] c = texture(tex, base + pt * vec2(4.0));
- [vo/opengl-hq] [ 28] color += vec4(weights[4]) * c;
- [vo/opengl-hq] [ 29] c = texture(tex, base + pt * vec2(5.0));
- [vo/opengl-hq] [ 30] color += vec4(weights[5]) * c;
- [vo/opengl-hq] [ 31] }
- [vo/opengl-hq] [ 32] color.b = 0.000000;
- [vo/opengl-hq] [ 33] color.a = 1.000000;
- [vo/opengl-hq] Create FBO: 1920x1080 (1920x1080)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] [ 1] // combining planes
- [vo/opengl-hq] [ 2] color.r = 1.000000 * vec4(texture(texture0, texcoord0)).r;
- [vo/opengl-hq] [ 3] color.gb = 1.000000 * vec4(texture(texture1, texcoord1)).rg;
- [vo/opengl-hq] Create FBO: 1920x1080 (1920x1080)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] header:
- [vo/opengl-hq] [ 1] #define HOOKED_raw texture0
- [vo/opengl-hq] [ 2] #define HOOKED_pos texcoord0
- [vo/opengl-hq] [ 3] #define HOOKED_size texture_size0
- [vo/opengl-hq] [ 4] #define HOOKED_rot texture_rot0
- [vo/opengl-hq] [ 5] #define HOOKED_pt pixel_size0
- [vo/opengl-hq] [ 6] #define HOOKED_tex(pos) (1.000000 * vec4(texture(HOOKED_raw, pos)).rgba)
- [vo/opengl-hq] [ 7] #define HOOKED_texOff(off) HOOKED_tex(HOOKED_pos + HOOKED_pt * vec2(off))
- [vo/opengl-hq] [ 8] #define NATIVE_raw texture0
- [vo/opengl-hq] [ 9] #define NATIVE_pos texcoord0
- [vo/opengl-hq] [ 10] #define NATIVE_size texture_size0
- [vo/opengl-hq] [ 11] #define NATIVE_rot texture_rot0
- [vo/opengl-hq] [ 12] #define NATIVE_pt pixel_size0
- [vo/opengl-hq] [ 13] #define NATIVE_tex(pos) (1.000000 * vec4(texture(NATIVE_raw, pos)).rgba)
- [vo/opengl-hq] [ 14] #define NATIVE_texOff(off) NATIVE_tex(NATIVE_pos + NATIVE_pt * vec2(off))
- [vo/opengl-hq] [ 15] #define LOWRES_YUV_raw texture1
- [vo/opengl-hq] [ 16] #define LOWRES_YUV_pos texcoord1
- [vo/opengl-hq] [ 17] #define LOWRES_YUV_size texture_size1
- [vo/opengl-hq] [ 18] #define LOWRES_YUV_rot texture_rot1
- [vo/opengl-hq] [ 19] #define LOWRES_YUV_pt pixel_size1
- [vo/opengl-hq] [ 20] #define LOWRES_YUV_tex(pos) (1.000000 * vec4(texture(LOWRES_YUV_raw, pos)).rgba)
- [vo/opengl-hq] [ 21] #define LOWRES_YUV_texOff(off) LOWRES_YUV_tex(LOWRES_YUV_pos + LOWRES_YUV_pt * vec2(off))
- [vo/opengl-hq] [ 22]
- [vo/opengl-hq] [ 23] // -- CrossBilateral --
- [vo/opengl-hq] [ 24]
- [vo/opengl-hq] [ 25] // -- Misc --
- [vo/opengl-hq] [ 26] #define power 0.5
- [vo/opengl-hq] [ 27]
- [vo/opengl-hq] [ 28] // -- Convenience --
- [vo/opengl-hq] [ 29] #define sqr(x) dot(x,x)
- [vo/opengl-hq] [ 30] #define noise 0.15
- [vo/opengl-hq] [ 31] #define bitnoise 1.0/(2.0*255.0)
- [vo/opengl-hq] [ 32]
- [vo/opengl-hq] [ 33] #define dxdy (NATIVE_pt)
- [vo/opengl-hq] [ 34] #define ddxddy (LOWRES_YUV_pt)
- [vo/opengl-hq] [ 35] #define chromaOffset vec2(0.0, 0.0)
- [vo/opengl-hq] [ 36] #define radius 1.0
- [vo/opengl-hq] [ 37]
- [vo/opengl-hq] [ 38] // -- Window Size --
- [vo/opengl-hq] [ 39] #define taps 3
- [vo/opengl-hq] [ 40] #define even (float(taps) - 2.0 * floor(float(taps) / 2.0) == 0.0)
- [vo/opengl-hq] [ 41] #define minX int(1.0-ceil(float(taps)/2.0))
- [vo/opengl-hq] [ 42] #define maxX int(floor(float(taps)/2.0))
- [vo/opengl-hq] [ 43]
- [vo/opengl-hq] [ 44] // -- Input processing --
- [vo/opengl-hq] [ 45] // Luma value
- [vo/opengl-hq] [ 46] //#define GetLuma(x,y) LOWRES_YUV_tex(HOOKED_pos + dxdy*vec2(x,y))[0]
- [vo/opengl-hq] [ 47] // Chroma value
- [vo/opengl-hq] [ 48] #define GetChroma(x,y) LOWRES_YUV_tex(ddxddy*(pos+vec2(x,y)+0.5))
- [vo/opengl-hq] [ 49]
- [vo/opengl-hq] [ 50] #define localVar 0.0//sqr(bitnoise)
- [vo/opengl-hq] [ 51] #define fixLuma 0.0
- [vo/opengl-hq] [ 52]
- [vo/opengl-hq] [ 53] #define C(i,j) (inversesqrt(sqr(noise) + X[i].w + X[j].w) * exp(-0.5*(sqr(X[i].x - X[j].x)/(sqr(noise) + X[i].w + X[j].w) + sqr((coords[i] - coords[j])/radius))) + fixLuma * (X[i].x - c0.x) * (X[j].x - c0.x))
- [vo/opengl-hq] [ 54] #define c(i) (inversesqrt(sqr(noise) + X[i].w + localVar) * exp(-0.5*(sqr(X[i].x - c0.x)/(sqr(noise) + X[i].w + localVar) + sqr((coords[i] - offset)/radius))))
- [vo/opengl-hq] [ 55]
- [vo/opengl-hq] [ 56] #define N (taps*taps - 1)
- [vo/opengl-hq] [ 57]
- [vo/opengl-hq] [ 58] vec4 hook() {
- [vo/opengl-hq] [ 59] vec4 c0 = HOOKED_tex(HOOKED_pos);
- [vo/opengl-hq] [ 60]
- [vo/opengl-hq] [ 61] // Calculate position
- [vo/opengl-hq] [ 62] vec2 pos = HOOKED_pos * LOWRES_YUV_size - chromaOffset - vec2(0.5);
- [vo/opengl-hq] [ 63] vec2 offset = pos - (even ? floor(pos) : round(pos));
- [vo/opengl-hq] [ 64] pos -= offset;
- [vo/opengl-hq] [ 65]
- [vo/opengl-hq] [ 66] vec2 coords[N+1];
- [vo/opengl-hq] [ 67] vec4 X[N+1];
- [vo/opengl-hq] [ 68] int i=0;
- [vo/opengl-hq] [ 69] for (int xx = minX; xx <= maxX; xx++)
- [vo/opengl-hq] [ 70] for (int yy = minX; yy <= maxX; yy++)
- [vo/opengl-hq] [ 71] if (!(xx == 0 && yy == 0)) {
- [vo/opengl-hq] [ 72] coords[i] = vec2(xx,yy);
- [vo/opengl-hq] [ 73] X[i++] = GetChroma(xx, yy);
- [vo/opengl-hq] [ 74] }
- [vo/opengl-hq] [ 75]
- [vo/opengl-hq] [ 76] coords[N] = vec2(0,0);
- [vo/opengl-hq] [ 77] X[N] = GetChroma(0,0);
- [vo/opengl-hq] [ 78]
- [vo/opengl-hq] [ 79] float M[N*N];
- [vo/opengl-hq] [ 80] float b[N];
- [vo/opengl-hq] [ 81]
- [vo/opengl-hq] [ 82] for (i=0; i<N; i++) {
- [vo/opengl-hq] [ 83] b[i] = c(i) - c(N) - C(i,N) + C(N,N);
- [vo/opengl-hq] [ 84] for (int j=i; j<N; j++) {
- [vo/opengl-hq] [ 85] M[i*N + j] = C(i,j) - C(i,N) - C(j,N) + C(N,N);
- [vo/opengl-hq] [ 86] }
- [vo/opengl-hq] [ 87] }
- [vo/opengl-hq] [ 88]
- [vo/opengl-hq] [ 89] for (i=0; i<N; i++) {
- [vo/opengl-hq] [ 90] for (int j=i+1; j<N; j++) {
- [vo/opengl-hq] [ 91] b[j] -= b[i] * M[i*N + j] / M[i*N + i];
- [vo/opengl-hq] [ 92] for (int k=j; k<N; k++) {
- [vo/opengl-hq] [ 93] M[j*N + k] -= M[i*N + k] * M[i*N + j] / M[i*N + i];
- [vo/opengl-hq] [ 94] }
- [vo/opengl-hq] [ 95] }
- [vo/opengl-hq] [ 96] }
- [vo/opengl-hq] [ 97]
- [vo/opengl-hq] [ 98] //float w[N];
- [vo/opengl-hq] [ 99] //float det = 1;
- [vo/opengl-hq] [100] //float Tr = 0;
- [vo/opengl-hq] [101] for (i=N-1; i>=0; i--) {
- [vo/opengl-hq] [102] //w[i] = b[i];
- [vo/opengl-hq] [103] for (int j=i+1; j<N; j++) {
- [vo/opengl-hq] [104] b[i] -= M[i*N + j] * b[j];
- [vo/opengl-hq] [105] }
- [vo/opengl-hq] [106] b[i] /= M[i*N + i];
- [vo/opengl-hq] [107] //det *= M[i*N + i];
- [vo/opengl-hq] [108] //Tr += M[i*N + i];
- [vo/opengl-hq] [109] }
- [vo/opengl-hq] [110]
- [vo/opengl-hq] [111] vec4 interp = X[N];
- [vo/opengl-hq] [112] for (i=0; i<N; i++)
- [vo/opengl-hq] [113] interp += b[i] * (X[i] - X[N]);
- [vo/opengl-hq] [114]
- [vo/opengl-hq] [115] // Update c0
- [vo/opengl-hq] [116] c0.yz = interp.yz;
- [vo/opengl-hq] [117]
- [vo/opengl-hq] [118] return c0;
- [vo/opengl-hq] [119] }
- [vo/opengl-hq] body:
- [vo/opengl-hq] [ 1] // custom hook
- [vo/opengl-hq] [ 2] color = hook();
- [vo/opengl-hq] [ 3] color.a = 1.000000;
- [vo/opengl-hq] Create FBO: 1920x1080 (1920x1080)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] [ 1] color.rgb = 1.000000 * vec4(texture(texture0, texcoord0)).rgb;
- [vo/opengl-hq] [ 2] // color conversion
- [vo/opengl-hq] [ 3] color.rgb = mat3(colormatrix) * color.rgb + colormatrix_c;
- [vo/opengl-hq] [ 4] color.a = 1.0;
- [vo/opengl-hq] [ 5] // scaler pre-conversion
- [vo/opengl-hq] [ 6] color.rgb = clamp(color.rgb, 0.0, 1.0);
- [vo/opengl-hq] [ 7] color.rgb = pow(color.rgb, vec3(2.4));
- [vo/opengl-hq] [ 8] // main scaling
- [vo/opengl-hq] Dither to 8.
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] [ 1] #undef tex
- [vo/opengl-hq] [ 2] #define tex texture0
- [vo/opengl-hq] [ 3] vec2 pos = texcoord0;
- [vo/opengl-hq] [ 4] vec2 size = texture_size0;
- [vo/opengl-hq] [ 5] vec2 pt = pixel_size0;
- [vo/opengl-hq] [ 6] color = texture(tex, pos);
- [vo/opengl-hq] [ 7] color *= 1.000000;
- [vo/opengl-hq] [ 8] color.a = 1.000000;
- [vo/opengl-hq] [ 9] // scaler post-conversion
- [vo/opengl-hq] [ 10] // color mapping
- [vo/opengl-hq] [ 11] color.rgb = clamp(color.rgb, 0.0, 1.0);
- [vo/opengl-hq] [ 12] color.rgb = pow(color.rgb, vec3(1.0/2.4));
- [vo/opengl-hq] [ 13] // dithering
- [vo/opengl-hq] [ 14] vec2 dither_pos = gl_FragCoord.xy / 64.0;
- [vo/opengl-hq] [ 15] float dither_value = texture(dither, dither_pos).r;
- [vo/opengl-hq] [ 16] color = floor(color * 255.0 + dither_value + 0.5 / 4096.0) / 255.0;
- [osd/libass] fontselect: (sans-serif, 400, 0) -> /usr/share/fonts/truetype/arial.ttf, 0, ArialMT
- [cplayer] first video frame after restart shown
- [cplayer] starting audio playback
- [cplayer] playback restart complete
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [vo/opengl-hq] Resize: 1903x1060
- [vo/opengl-hq] Window size: 1903x1060
- [vo/opengl-hq] Video source: 1920x1080 (1:1)
- [vo/opengl-hq] Video display: (0, 0) 1920x1080 -> (9, 0) 1884x1060
- [vo/opengl-hq] Video scale: 0.981250/0.981481
- [vo/opengl-hq] OSD borders: l=9 t=0 r=10 b=0
- [vo/opengl-hq] Video borders: l=9 t=0 r=10 b=0
- [vo/opengl-hq] Create FBO: 1920x1060 (1920x1280)
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] [ 1] #undef tex
- [vo/opengl-hq] [ 2] #define tex texture0
- [vo/opengl-hq] [ 3] vec2 pos = texcoord0;
- [vo/opengl-hq] [ 4] vec2 size = texture_size0;
- [vo/opengl-hq] [ 5] vec2 pt = pixel_size0;
- [vo/opengl-hq] [ 6] // pass 1
- [vo/opengl-hq] [ 7] color = vec4(0.0);
- [vo/opengl-hq] [ 8] {
- [vo/opengl-hq] [ 9] vec2 dir = vec2(0.0, 1.0);
- [vo/opengl-hq] [ 10] pt *= dir;
- [vo/opengl-hq] [ 11] float fcoord = dot(fract(pos * size - vec2(0.5)), dir);
- [vo/opengl-hq] [ 12] vec2 base = pos - fcoord * pt - pt * vec2(2.0);
- [vo/opengl-hq] [ 13] vec4 c;
- [vo/opengl-hq] [ 14] float fcoord_lut = LUT_POS(fcoord, 64.0);
- [vo/opengl-hq] [ 15] vec4 c1 = texture(lut, vec2(0.25, fcoord_lut));
- [vo/opengl-hq] [ 16] vec4 c2 = texture(lut, vec2(0.75, fcoord_lut));
- [vo/opengl-hq] [ 17] float weights[6] = float[](c1.r, c1.g, c1.b, c2.r, c2.g, c2.b);
- [vo/opengl-hq] [ 18] // scaler samples
- [vo/opengl-hq] [ 19] c = texture(tex, base + pt * vec2(0.0));
- [vo/opengl-hq] [ 20] color += vec4(weights[0]) * c;
- [vo/opengl-hq] [ 21] c = texture(tex, base + pt * vec2(1.0));
- [vo/opengl-hq] [ 22] color += vec4(weights[1]) * c;
- [vo/opengl-hq] [ 23] c = texture(tex, base + pt * vec2(2.0));
- [vo/opengl-hq] [ 24] color += vec4(weights[2]) * c;
- [vo/opengl-hq] [ 25] c = texture(tex, base + pt * vec2(3.0));
- [vo/opengl-hq] [ 26] color += vec4(weights[3]) * c;
- [vo/opengl-hq] [ 27] c = texture(tex, base + pt * vec2(4.0));
- [vo/opengl-hq] [ 28] color += vec4(weights[4]) * c;
- [vo/opengl-hq] [ 29] c = texture(tex, base + pt * vec2(5.0));
- [vo/opengl-hq] [ 30] color += vec4(weights[5]) * c;
- [vo/opengl-hq] [ 31] }
- [vo/opengl-hq] [ 32] color *= 1.000000;
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] [ 1] #undef tex
- [vo/opengl-hq] [ 2] #define tex texture0
- [vo/opengl-hq] [ 3] vec2 pos = texcoord0;
- [vo/opengl-hq] [ 4] vec2 size = texture_size0;
- [vo/opengl-hq] [ 5] vec2 pt = pixel_size0;
- [vo/opengl-hq] [ 6] // pass 2
- [vo/opengl-hq] [ 7] color = vec4(0.0);
- [vo/opengl-hq] [ 8] {
- [vo/opengl-hq] [ 9] vec2 dir = vec2(1.0, 0.0);
- [vo/opengl-hq] [ 10] pt *= dir;
- [vo/opengl-hq] [ 11] float fcoord = dot(fract(pos * size - vec2(0.5)), dir);
- [vo/opengl-hq] [ 12] vec2 base = pos - fcoord * pt - pt * vec2(2.0);
- [vo/opengl-hq] [ 13] vec4 c;
- [vo/opengl-hq] [ 14] float fcoord_lut = LUT_POS(fcoord, 64.0);
- [vo/opengl-hq] [ 15] vec4 c1 = texture(lut, vec2(0.25, fcoord_lut));
- [vo/opengl-hq] [ 16] vec4 c2 = texture(lut, vec2(0.75, fcoord_lut));
- [vo/opengl-hq] [ 17] float weights[6] = float[](c1.r, c1.g, c1.b, c2.r, c2.g, c2.b);
- [vo/opengl-hq] [ 18] // scaler samples
- [vo/opengl-hq] [ 19] c = texture(tex, base + pt * vec2(0.0));
- [vo/opengl-hq] [ 20] color += vec4(weights[0]) * c;
- [vo/opengl-hq] [ 21] c = texture(tex, base + pt * vec2(1.0));
- [vo/opengl-hq] [ 22] color += vec4(weights[1]) * c;
- [vo/opengl-hq] [ 23] c = texture(tex, base + pt * vec2(2.0));
- [vo/opengl-hq] [ 24] color += vec4(weights[2]) * c;
- [vo/opengl-hq] [ 25] c = texture(tex, base + pt * vec2(3.0));
- [vo/opengl-hq] [ 26] color += vec4(weights[3]) * c;
- [vo/opengl-hq] [ 27] c = texture(tex, base + pt * vec2(4.0));
- [vo/opengl-hq] [ 28] color += vec4(weights[4]) * c;
- [vo/opengl-hq] [ 29] c = texture(tex, base + pt * vec2(5.0));
- [vo/opengl-hq] [ 30] color += vec4(weights[5]) * c;
- [vo/opengl-hq] [ 31] }
- [vo/opengl-hq] [ 32] color.a = 1.000000;
- [vo/opengl-hq] [ 33] // scaler post-conversion
- [vo/opengl-hq] [ 34] // color mapping
- [vo/opengl-hq] [ 35] color.rgb = clamp(color.rgb, 0.0, 1.0);
- [vo/opengl-hq] [ 36] color.rgb = pow(color.rgb, vec3(1.0/2.4));
- [vo/opengl-hq] [ 37] // dithering
- [vo/opengl-hq] [ 38] vec2 dither_pos = gl_FragCoord.xy / 64.0;
- [vo/opengl-hq] [ 39] float dither_value = texture(dither, dither_pos).r;
- [vo/opengl-hq] [ 40] color = floor(color * 255.0 + dither_value + 0.5 / 4096.0) / 255.0;
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [cplayer] Run command: enable-section, flags=0, args=[input, ]
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [osd/libass] fontselect: (mpv-osd-symbols, 400, 0) -> mpv-osd-symbols-Regular, 0, mpv-osd-symbols-Regular
- [vo/opengl-hq] Reallocating OSD texture to 1024x512.
- [vo/opengl-hq] recompiling a shader program:
- [vo/opengl-hq] [ 1] // OSD (libass)
- [vo/opengl-hq] [ 2] color = vec4(ass_color.rgb, ass_color.a * texture(osdtex, texcoord).r);
- [vo/opengl-hq] [ 3] // color mapping
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:00 / 00:00:52 (0%) A-V: 0.000
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:00 / 00:00:52 (1%) A-V: 0.000
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:00 / 00:00:52 (1%) A-V: 0.000 Dropped: 1
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding2]
- [statusline] AV: 00:00:00 / 00:00:52 (1%) A-V: 0.000 Dropped: 2
- [cplayer] Run command: disable-section, flags=0, args=[input]
- [statusline] AV: 00:00:01 / 00:00:52 (2%) A-V: 0.000 Dropped: 3
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:01 / 00:00:52 (2%) A-V: 0.000 Dropped: 3
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding1]
- [statusline] AV: 00:00:01 / 00:00:52 (2%) A-V: 0.000 Dropped: 3
- [cplayer] Run command: enable-section, flags=0, args=[input, ]
- [cplayer] Run command: script-binding, flags=9, args=[osc/__keybinding2]
- [statusline] AV: 00:00:01 / 00:00:52 (2%) A-V: 0.000 Dropped: 4
- [cplayer] Run command: disable-section, flags=0, args=[input]
- [statusline] AV: 00:00:02 / 00:00:52 (5%) A-V: 0.000 Dropped: 9
- [cplayer] Run command: quit, flags=9, args=[0]
- [cplayer] EOF code: 6
- [ad] Uninit audio decoder.
- [af] Removing filter lavrresample
- [vd] Uninit video.
- [cplayer] finished playback, success (reason 3)
- [cplayer]
- [cplayer]
- [cplayer] Exiting... (Quit)
- [ytdl_hook] Exiting...
- [osc] Exiting...
- [ao/pulse] draining...
- [vo/opengl-hq] flushing shader cache
- [vo/opengl-hq/x11] Enabling screensaver.
- [vo/opengl-hq/x11] uninit ...
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement