shinchiro / mpv-winbuild-cmake

CMake-based MinGW-w64 Cross Toolchain
645 stars 115 forks source link

jxl screenshot not working #201

Closed CharlesMengCA closed 2 years ago

CharlesMengCA commented 2 years ago

mpv crashed when taking screenshot in jxl mode.

Both your version and my light version are not working.

[cplayer] Command line options: 'd:\Sony-Whale-in-Tonga-HDR-UHD.mp4' '-v' [cplayer] mpv 0.34.0-285-g9ffaa6b81b Copyright © 2000-2022 mpv/MPlayer/mplayer2 projects [cplayer] built on Sun May 1 00:44:28 UTC 2022 [cplayer] FFmpeg library versions: [cplayer] libavutil 57.24.101 [cplayer] libavcodec 59.27.100 [cplayer] libavformat 59.23.100 [cplayer] libswscale 6.6.100 [cplayer] libavfilter 8.37.100 [cplayer] libswresample 4.6.100 [cplayer] FFmpeg version: git-2022-04-30-296d3bbe [cplayer] [cplayer] Configuration: /w/mpv-winbuild-cmake/mpv-winbuild-cmake/src_packages/mpv/waf configure --out=/w/mpv-winbuild-cmake/mpv-winbuild-cmake/build64/packages/mpv-prefix/src/mpv-build --top=/w/mpv-winbuild-cmake/mpv-winbuild-cmake/src_packages/mpv --enable-static-build --enable-pdf-build --disable-manpage-build --enable-libmpv-shared --enable-lua --enable-javascript --enable-sdl2 --enable-libarchive --enable-libbluray --enable-dvdnav --enable-uchardet --enable-rubberband --enable-lcms2 --enable-openal --enable-spirv-cross --enable-vulkan --enable-vapoursynth --prefix=/w/mpv-winbuild-cmake/mpv-winbuild-cmake/build64/install/mingw [cplayer] List of enabled features: asm build-date cplayer cuda-hwaccel cuda-interop d3d-hwaccel d3d11 d3d9-hwaccel debug-build direct3d dos-paths dvdnav egl-angle egl-angle-win32 egl-helpers ffmpeg ffnvcodec gl gl-dxinterop gl-dxinterop-d3d9 gl-win32 glob glob-win32 gpl iconv javascript jpeg jpegxl lcms2 libarchive libass libavdevice libbluray libm libmpv-shared libplacebo libplacebo-next lua luajit mingw noexecstack openal optimize plain-gl posix-or-mingw rubberband sdl2 sdl2-audio sdl2-gamepad sdl2-video shaderc shaderc-static spirv-cross spirv-cross-static static-build stdatomic uchardet vapoursynth vector vulkan wasapi win32-desktop win32-internal-pthreads zimg zlib [cplayer] Reading config file D:/LinuxFolder/Mod/portable_config/mpv.conf [cplayer] Applying profile 'default'... [cplayer] Setting option 'loop-playlist' = '' (flags = 4) [cplayer] Setting option 'hwdec' = 'auto' (flags = 4) [cplayer] Setting option 'gpu-api' = 'vulkan' (flags = 4) [cplayer] Setting option 'script-opts' = 'ytdl_hook-ytdl_path=D:\Tools\yt-dlp\yt-dlp' (flags = 4) [cplayer] Setting option 'screenshot-format' = 'jxl' (flags = 4) [cplayer] Setting option 'v' = '' (flags = 8) [ifo_dvdnav] Opening D:/LinuxFolder/Mod/portable_config/input.conf [bdmv/bluray] Opening D:/LinuxFolder/Mod/portable_config/input.conf [file] Opening D:/LinuxFolder/Mod/portable_config/input.conf [input] Parsing input config file D:/LinuxFolder/Mod/portable_config/input.conf [input] Input config file D:/LinuxFolder/Mod/portable_config/input.conf parsed: 23 binds [cplayer] Waiting for scripts... [osd/libass] libass API version: 0x1502002 [osd/libass] libass source: commit: 8e80f49ba70d6f16d8f244a7f41dfeee98d416df [osd/libass] Shaper: FriBidi 1.0.12 (SIMPLE) HarfBuzz-ng 4.2.1 (COMPLEX) [osd/libass] Setting up fonts... [osd/libass] Using font provider directwrite (with GDI) [osd/libass] Done. [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: shared-script-properties -> 1 [cplayer] Done loading scripts. [cplayer] Running hook: ytdl_hook/on_load [ytdl_hook] ytdl:// hook [ytdl_hook] not a ytdl:// url [cplayer] Set property: shared-script-properties -> 1 [ifo_dvdnav] Opening d:\Sony-Whale-in-Tonga-HDR-UHD.mp4 [bdmv/bluray] Opening d:\Sony-Whale-in-Tonga-HDR-UHD.mp4 [cplayer] Set property: shared-script-properties -> 1 [file] Opening d:\Sony-Whale-in-Tonga-HDR-UHD.mp4 [demux] Trying demuxers for level=normal. [osd/libass] libass API version: 0x1502002 [osd/libass] libass source: commit: 8e80f49ba70d6f16d8f244a7f41dfeee98d416df [osd/libass] Shaper: FriBidi 1.0.12 (SIMPLE) HarfBuzz-ng 4.2.1 (COMPLEX) [osd/libass] Setting up fonts... [osd/libass] Using font provider directwrite (with GDI) [osd/libass] Done. [lavf] Found 'mov,mp4,m4a,3gp,3g2,mj2' at score=100 size=2048. [demux] Detected file format: mov,mp4,m4a,3gp,3g2,mj2 (libavformat) [cplayer] Opening done: d:\Sony-Whale-in-Tonga-HDR-UHD.mp4 [find_files] Loading external files in d:\ [cplayer] Running hook: ytdl_hook/on_preloaded [lavf] select track 0 [lavf] select track 1 [cplayer] (+) Video --vid=1 () (hevc 3840x2160 59.940fps) [cplayer] (+) Audio --aid=1 --alang=eng () (aac 2ch 48000Hz) [vo/gpu] Probing for best GPU context. [vo/gpu/vulkan] Initializing GPU context 'winvk' [vo/gpu/vulkan/libplacebo] Initialized libplacebo v4.203.0 (API v203) [vo/gpu/vulkan/libplacebo] Creating vulkan instance with extensions: [vo/gpu/vulkan/libplacebo] VK_KHR_get_physical_device_properties2 [vo/gpu/vulkan/libplacebo] VK_KHR_surface [vo/gpu/vulkan/libplacebo] VK_EXT_swapchain_colorspace [vo/gpu/vulkan/libplacebo] VK_KHR_external_memory_capabilities [vo/gpu/vulkan/libplacebo] VK_KHR_external_semaphore_capabilities [vo/gpu/vulkan/libplacebo] VK_KHR_surface [vo/gpu/vulkan/libplacebo] VK_KHR_win32_surface [vo/gpu/vulkan/libplacebo] Probing for vulkan devices: [vo/gpu/vulkan/libplacebo] GPU 0: NVIDIA GeForce GTX 1650 SUPER (discrete) [vo/gpu/vulkan/libplacebo] uuid: 30:86:8B:3D:F5:51:F3:6F:0C:5E:9E:A6:24:47:A7:26 [vo/gpu/vulkan/libplacebo] GPU 1: Intel(R) UHD Graphics 630 (integrated) [vo/gpu/vulkan/libplacebo] uuid: 86:80:C5:9B:05:00:00:00:00:00:00:00:00:00:00:00 [vo/gpu/vulkan/libplacebo] Vulkan device properties: [vo/gpu/vulkan/libplacebo] Device Name: NVIDIA GeForce GTX 1650 SUPER [vo/gpu/vulkan/libplacebo] Device ID: 10de:2187 [vo/gpu/vulkan/libplacebo] Device UUID: 30:86:8B:3D:F5:51:F3:6F:0C:5E:9E:A6:24:47:A7:26 [vo/gpu/vulkan/libplacebo] Driver version: -2146516992 [vo/gpu/vulkan/libplacebo] API version: 1.3.194 [vo/gpu/vulkan/libplacebo] Using async transfer (queue 1) [vo/gpu/vulkan/libplacebo] Using async compute (queue 2) [vo/gpu/vulkan/libplacebo] Creating vulkan device with extensions: [vo/gpu/vulkan/libplacebo] VK_KHR_swapchain [vo/gpu/vulkan/libplacebo] VK_KHR_swapchain [vo/gpu/vulkan/libplacebo] VK_KHR_push_descriptor [vo/gpu/vulkan/libplacebo] VK_KHR_external_memory_win32 [vo/gpu/vulkan/libplacebo] VK_EXT_external_memory_host [vo/gpu/vulkan/libplacebo] VK_KHR_external_semaphore_win32 [vo/gpu/vulkan/libplacebo] VK_EXT_pci_bus_info [vo/gpu/vulkan/libplacebo] VK_EXT_hdr_metadata [vo/gpu/vulkan/libplacebo] Memory heaps supported by device: [vo/gpu/vulkan/libplacebo] 0: flags 0x1 size 3955M [vo/gpu/vulkan/libplacebo] 1: flags 0x0 size 8067M [vo/gpu/vulkan/libplacebo] 2: flags 0x1 size 214M [vo/gpu/vulkan/libplacebo] Memory summary: 0 used 0 res 0 alloc, efficiency 100.00%, utilization 100.00% [vo/gpu/vulkan/libplacebo] shaderc SPIR-V version 1.6 rev 1 [vo/gpu/vulkan/libplacebo] Initialized SPIR-V compiler 'shaderc' [vo/gpu/vulkan/libplacebo] GPU information: [vo/gpu/vulkan/libplacebo] GLSL version: 450 (vulkan) [vo/gpu/vulkan/libplacebo] max_shmem_size: 49152 [vo/gpu/vulkan/libplacebo] max_group_threads: 1024

[vo/gpu/vulkan/libplacebo] subgroup_size: 32 [vo/gpu/vulkan/libplacebo] min_gather_offset: -32 [vo/gpu/vulkan/libplacebo] max_gather_offset: 31 [vo/gpu/vulkan/libplacebo] Limits: [vo/gpu/vulkan/libplacebo] thread_safe: 1 [vo/gpu/vulkan/libplacebo] callbacks: 1 [vo/gpu/vulkan/libplacebo] max_buf_size: 18446744073709551615 [vo/gpu/vulkan/libplacebo] max_ubo_size: 65536 [vo/gpu/vulkan/libplacebo] max_ssbo_size: 4294967295 [vo/gpu/vulkan/libplacebo] max_vbo_size: 18446744073709551615 [vo/gpu/vulkan/libplacebo] max_mapped_size: 18446744073709551615 [vo/gpu/vulkan/libplacebo] max_buffer_texels: 134217728 [vo/gpu/vulkan/libplacebo] align_host_ptr: 4096 [vo/gpu/vulkan/libplacebo] max_tex_1d_dim: 32768 [vo/gpu/vulkan/libplacebo] max_tex_2d_dim: 32768 [vo/gpu/vulkan/libplacebo] max_tex_3d_dim: 16384 [vo/gpu/vulkan/libplacebo] blittable_1d_3d: 1 [vo/gpu/vulkan/libplacebo] buf_transfer: 1 [vo/gpu/vulkan/libplacebo] align_tex_xfer_pitch: 1 [vo/gpu/vulkan/libplacebo] align_tex_xfer_offset: 4 [vo/gpu/vulkan/libplacebo] max_variable_comps: 0 [vo/gpu/vulkan/libplacebo] max_constants: 18446744073709551615 [vo/gpu/vulkan/libplacebo] max_pushc_size: 256 [vo/gpu/vulkan/libplacebo] align_vertex_stride: 1

[vo/gpu/vulkan/libplacebo] fragment_queues: 1 [vo/gpu/vulkan/libplacebo] compute_queues: 1 [vo/gpu/vulkan/libplacebo] External API interop: [vo/gpu/vulkan/libplacebo] UUID: 30:86:8B:3D:F5:51:F3:6F:0C:5E:9E:A6:24:47:A7:26 [vo/gpu/vulkan/libplacebo] PCI: 0000:01:00:0 [vo/gpu/vulkan/libplacebo] buf export caps: 0x16 [vo/gpu/vulkan/libplacebo] buf import caps: 0x16 [vo/gpu/vulkan/libplacebo] tex export caps: 0x16 [vo/gpu/vulkan/libplacebo] tex import caps: 0x16 [vo/gpu/vulkan/libplacebo] sync export caps: 0x6 [vo/gpu/vulkan/libplacebo] sync import caps: 0x0 [vo/gpu/vulkan/libplacebo] Available surface configurations: [vo/gpu/vulkan/libplacebo] 0: VK_FORMAT_B8G8R8A8_UNORM VK_COLOR_SPACE_SRGB_NONLINEAR_KHR [vo/gpu/vulkan/libplacebo] 1: VK_FORMAT_B8G8R8A8_SRGB VK_COLOR_SPACE_SRGB_NONLINEAR_KHR [vo/gpu/vulkan/libplacebo] 2: VK_FORMAT_A2B10G10R10_UNORM_PACK32 VK_COLOR_SPACE_SRGB_NONLINEAR_KHR [vo/gpu/vulkan/libplacebo] Picked surface configuration 2: VK_FORMAT_A2B10G10R10_UNORM_PACK32 + VK_COLOR_SPACE_SRGB_NONLINEAR_KHR [vo/gpu] Testing FBO format rgba16f [vo/gpu] Using FBO format rgba16f. [vo/gpu] No advanced processing required. Enabling dumb mode. [vo/gpu/win32] DPI detected from the new API: 96 [vo/gpu/win32] display-fps: 74.971000 [vo/gpu/win32] color-profile: C:\Windows\system32\spool\drivers\color\S2721DS.icm [vo/gpu] Assuming 74.971000 FPS for display sync. [vd] Container reported FPS: 59.940060 [vd] Codec list: [vd] hevc - HEVC (High Efficiency Video Coding) [vd] hevc_qsv (hevc) - HEVC video (Intel Quick Sync Video acceleration) [vd] hevc_cuvid (hevc) - Nvidia CUVID HEVC decoder [vd] Opening decoder hevc [vd] Looking at hwdec hevc-d3d11va... [vo/gpu] Loading hwdec drivers for format: 'd3d11' [vo/gpu] Loading hwdec driver 'd3d11-egl' [vo/gpu] Loading failed. [vo/gpu] Loading hwdec driver 'd3d11va' [vo/gpu] Loading failed. [vd] Could not create device. [vd] Looking at hwdec hevc-dxva2... [vo/gpu] Loading hwdec drivers for format: 'dxva2_vld' [vo/gpu] Loading hwdec driver 'dxva2-egl' [vo/gpu] Loading failed. [vo/gpu] Loading hwdec driver 'dxva2-dxgi' [vo/gpu] Loading failed. [vo/gpu] Loading hwdec driver 'dxva2-dxinterop' [vo/gpu] Loading failed. [vd] Could not create device. [vd] Looking at hwdec hevc-nvdec... [vo/gpu] Loading hwdec drivers for format: 'cuda' [vo/gpu] Loading hwdec driver 'cuda-nvdec' [vd] Trying hardware decoding via hevc-nvdec. [vd] Selected codec: hevc (HEVC (High Efficiency Video Coding)) [vf] User filter list: [vf] (empty) [ad] Codec list: [ad] aac - AAC (Advanced Audio Coding) [ad] aac_fixed (aac) - AAC (Advanced Audio Coding) [ad] Opening decoder aac [ad] Requesting 1 threads for decoding. [ad] Selected codec: aac (AAC (Advanced Audio Coding)) [af] User filter list: [af] (empty) [cplayer] Starting playback... [af] [in] 48000Hz stereo 2ch floatp [af] [userspeed] 48000Hz stereo 2ch floatp [af] [userspeed] (disabled) [af] [convert] 48000Hz stereo 2ch floatp [vd] Pixel formats supported by decoder: dxva2_vld d3d11va_vld d3d11 cuda yuv420p10le [vd] Codec profile: Main 10 (0x2) [vd] Requesting pixfmt 'cuda' from decoder. [vd] Using hardware decoding (nvdec). [vd] Decoder format: 3840x2160 cuda[p010] bt.2020-ncl/bt.2020/pq/limited/auto SP=0.002463 CL=uhd [vd] Invalid HDR peak in stream: 0.002463 [vf] [in] 3840x2160 cuda[p010] bt.2020-ncl/bt.2020/pq/limited/display SP=49.261086 CL=uhd [vf] [userdeint] 3840x2160 cuda[p010] bt.2020-ncl/bt.2020/pq/limited/display SP=49.261086 CL=uhd [vf] [userdeint] (disabled) [vf] [autorotate] 3840x2160 cuda[p010] bt.2020-ncl/bt.2020/pq/limited/display SP=49.261086 CL=uhd [vf] [autorotate] (disabled) [vf] [convert] 3840x2160 cuda[p010] bt.2020-ncl/bt.2020/pq/limited/display SP=49.261086 CL=uhd [vf] [convert] (disabled) [vf] [out] 3840x2160 cuda[p010] bt.2020-ncl/bt.2020/pq/limited/display SP=49.261086 CL=uhd [ao] Trying audio driver 'wasapi' [ao/wasapi] requested format: 48000 Hz, stereo channels, floatp [ao/wasapi] No device specified. Selecting default. [ao/wasapi] Selecting device '{f67cf096-38f7-483f-8346-f7ffbd95b388}' (Speakers (Sony MDR-1ADAC)) [ao/wasapi] Monitoring changes in device {0.0.0.00000000}.{f67cf096-38f7-483f-8346-f7ffbd95b388} [ao/wasapi] Trying stereo float (32/32 bits) @ 48000hz (shared) -> ok [ao/wasapi] Accepted as stereo float @ 48000hz -> stereo float (32/32 bits) @ 48000hz (shared) [ao/wasapi] Device period: 10 ms [ao/wasapi] Buffer frame count: 2400 (50 ms) [ao/wasapi] IAudioClock::GetFrequency gave a frequency of 384000. [ao/wasapi] device buffer: 2400 samples. [ao/wasapi] using soft-buffer of 9600 samples. [cplayer] AO: [wasapi] 48000Hz stereo 2ch float [cplayer] AO: Description: Windows WASAPI audio output (event mode) [autoconvert] inserting resampler [swresample] format change, reinitializing resampler [swresample] 48000Hz stereo floatp -> 48000Hz stereo float [af] [out] 48000Hz stereo 2ch float [cplayer] VO: [gpu] 3840x2160 cuda[p010] [cplayer] VO: Description: Shader-based GPU Renderer [vo/gpu] reconfig to 3840x2160 cuda[p010] bt.2020-ncl/bt.2020/pq/limited/display SP=49.261086 CL=uhd [vo/gpu/win32] reset window bounds: -609:-348:3840:2160 [vo/gpu/win32] adjusted window bounds: 70:34:2482:1396 [vo/gpu/win32] resize window: 2482:1396 [vo/gpu/win32] resize window: 2482:1396 [vo/gpu/vulkan/libplacebo] (Re)creating swapchain of size 2482x1396 [vo/gpu] Resize: 2482x1396 [vo/gpu] Window size: 2482x1396 (Borders: l=0 t=0 r=0 b=0) [vo/gpu] Video source: 3840x2160 (1:1) [vo/gpu] Video display: (0, 0) 3840x2160 -> (0, 0) 2481x1396 [vo/gpu] Video scale: 0.646094/0.646296 [vo/gpu] OSD borders: l=0 t=0 r=1 b=0 [vo/gpu] Video borders: l=0 t=0 r=1 b=0 [vo/gpu] Testing FBO format rgba16f [vo/gpu] Using FBO format rgba16f. [vo/gpu] No advanced processing required. Enabling dumb mode. [vo/gpu] Resize: 2482x1396 [vo/gpu] Window size: 2482x1396 (Borders: l=0 t=0 r=0 b=0) [vo/gpu] Video source: 3840x2160 (1:1) [vo/gpu] Video display: (0, 0) 3840x2160 -> (0, 0) 2481x1396 [vo/gpu] Video scale: 0.646094/0.646296 [vo/gpu] OSD borders: l=0 t=0 r=1 b=0 [vo/gpu] Video borders: l=0 t=0 r=1 b=0 [vo/gpu/vulkan/libplacebo] Spent 78.000 ms translating SPIR-V [cplayer] first video frame after restart shown [cplayer] audio ready [cplayer] delaying audio start 0.000000 vs. 0.000000, diff=0.000000 [cplayer] playback restart complete @ 0.000000, audio=ready, video=playing [cplayer] starting audio playback [cplayer] Set property: shared-script-properties -> 1 [cplayer] Set property: shared-script-properties -> 1 [cplayer] Starting screenshot: 'mpv-shot0003.jxl' [cplayer] using 11 threads for scaling [cplayer] Using zimg. [ao/wasapi] Under-run: Device delay: -0.3 us [ao/wasapi] Under-run: Device delay: -0.3 us

zhongfly commented 2 years ago

Set screenshot-format=jxl, an empty jxl file with a size of 0 will be created when taking a screenshot, and then crash Using https://github.com/shinchiro/mpv-winbuild-cmake/releases/tag/20220501

shinchiro commented 2 years ago

Seem issue with 64bit libjxl lib. 32bit works fine. Possibly upstream issue ffmpeg -i input.mkv -vframes 1 -ss 10 out.jxl