Opened 2 weeks ago

Last modified 13 days ago

#10970 new defect

Segmentation fault when using hwaccel vulkan video decode

Reported by: HolyWu Owned by:
Priority: normal Component: avutil
Version: git-master Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
Using hwaccel vulkan video decode on any AVC or HEVC format causes segfault.

How to reproduce:

$ gdb --args ffmpeg -loglevel trace -hwaccel vulkan -i moonlight.264 -f null -
GNU gdb (GDB) 14.2
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-w64-mingw32".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ffmpeg...
(gdb) run
Starting program: C:\msys64\ucrt64\bin\ffmpeg.exe -loglevel trace -hwaccel vulkan -i moonlight.264 -f null -
[New Thread 17280.0x2138]
[New Thread 17280.0xbb8]
[New Thread 17280.0x1c70]
ffmpeg version git-2024-04-19-f18de5b Copyright (c) 2000-2024 the FFmpeg developers
  built with gcc 13.2.0 (Rev6, Built by MSYS2 project)
  configuration: --prefix=/ucrt64 --enable-gpl --enable-version3 --disable-doc --pkg-config-flags=--static --enable-pic --enable-debug=2 --disable-optimizations --disable-stripping
  libavutil      59. 15.100 / 59. 15.100
  libavcodec     61.  5.103 / 61.  5.103
  libavformat    61.  3.100 / 61.  3.100
  libavdevice    61.  2.100 / 61.  2.100
  libavfilter    10.  2.101 / 10.  2.101
  libswscale      8.  2.100 /  8.  2.100
  libswresample   5.  2.100 /  5.  2.100
  libpostproc    58.  2.100 / 58.  2.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'trace'.
Reading option '-hwaccel' ... matched as option 'hwaccel' (use HW accelerated decoding) with argument 'vulkan'.
Reading option '-i' ... matched as input url with argument 'moonlight.264'.
Reading option '-f' ... matched as option 'f' (force container format (auto-detected otherwise)) with argument 'null'.
Reading option '-' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option loglevel (set logging level) with argument trace.
Successfully parsed a group of options.
Parsing a group of options: input url moonlight.264.
Applying option hwaccel (use HW accelerated decoding) with argument vulkan.
Successfully parsed a group of options.
Opening an input file: moonlight.264.
[AVFormatContext @ 00000000000fa180] Opening 'moonlight.264' for reading
[file @ 00000000000fa940] Setting default whitelist 'file,crypto,data'
Probing h264 score:51 size:2048
Probing mp3 score:1 size:2048
[h264 @ 00000000000fa180] Format h264 probed with size=2048 and score=51
[h264 @ 00000000000fa180] Before avformat_find_stream_info() pos: 0 bytes read:32768 seeks:0 nb_streams:1
[h264 @ 000000000010cf00] Decoding VUI
[h264 @ 000000000010cf00] ct_type:0 pic_struct:0
    Last message repeated 10 times
[extract_extradata @ 00000000025cce40] nal_unit_type: 7(SPS), nal_ref_idc: 1
[extract_extradata @ 00000000025cce40] nal_unit_type: 8(PPS), nal_ref_idc: 1
[extract_extradata @ 00000000025cce40] nal_unit_type: 6(SEI), nal_ref_idc: 0
[extract_extradata @ 00000000025cce40] nal_unit_type: 5(IDR), nal_ref_idc: 1
    Last message repeated 1 times
[h264 @ 000000000010cf00] nal_unit_type: 7(SPS), nal_ref_idc: 1
[h264 @ 000000000010cf00] nal_unit_type: 8(PPS), nal_ref_idc: 1
[h264 @ 000000000010cf00] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 000000000010cf00] nal_unit_type: 5(IDR), nal_ref_idc: 1
    Last message repeated 1 times
[h264 @ 000000000010cf00] Decoding VUI
[h264 @ 000000000010cf00] Format yuv420p chosen by get_format().
[h264 @ 000000000010cf00] Reinit context to 512x384, pix_fmt: yuv420p
[h264 @ 000000000010cf00] ct_type:0 pic_struct:0
[h264 @ 000000000010cf00] no picture
[h264 @ 000000000010cf00] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 000000000010cf00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
    Last message repeated 1 times
[h264 @ 000000000010cf00] ct_type:0 pic_struct:0
[h264 @ 000000000010cf00] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 000000000010cf00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
    Last message repeated 1 times
[h264 @ 000000000010cf00] ct_type:0 pic_struct:0
[h264 @ 000000000010cf00] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 000000000010cf00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
    Last message repeated 1 times
[h264 @ 000000000010cf00] ct_type:0 pic_struct:0
[h264 @ 000000000010cf00] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 000000000010cf00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
    Last message repeated 1 times
[h264 @ 000000000010cf00] ct_type:0 pic_struct:0
[h264 @ 000000000010cf00] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 000000000010cf00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
    Last message repeated 1 times
[h264 @ 000000000010cf00] ct_type:0 pic_struct:0
[h264 @ 000000000010cf00] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 000000000010cf00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
    Last message repeated 1 times
[h264 @ 000000000010cf00] ct_type:0 pic_struct:0
[h264 @ 000000000010cf00] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 000000000010cf00] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
    Last message repeated 1 times
[h264 @ 000000000010cf00] ct_type:0 pic_struct:0
    Last message repeated 39 times
[h264 @ 00000000000fa180] All info found
[h264 @ 00000000000fa180] stream 0: start_time: NOPTS duration: NOPTS
[h264 @ 00000000000fa180] format: start_time: NOPTS duration: NOPTS (estimate from bit rate) bitrate=0 kb/s
[h264 @ 00000000000fa180] After avformat_find_stream_info() pos: 21504 bytes read:32768 seeks:0 frames:50
Selecting decoder 'h264' because of requested hwaccel method vulkan
Input #0, h264, from 'moonlight.264':
  Duration: N/A, bitrate: N/A
  Stream #0:0, 50, 1/1200000: Video: h264 (Main), 1 reference frame, yuv420p(progressive, left), 512x384 [SAR 1:1 DAR 4:3], 0/1, 25 fps, 50 tbr, 1200k tbn
Successfully opened the file.
Parsing a group of options: output url -.
Applying option f (force container format (auto-detected otherwise)) with argument null.
Successfully parsed a group of options.
Opening an output file: -.
[out#0/null @ 00000000000f9c00] No explicit maps, mapping streams automatically...
[vost#0:0/wrapped_avframe @ 000000000284f1c0] Created video stream from input stream 0:0
[AVHWDeviceContext @ 00000000025cddc0] Supported validation layers:
[AVHWDeviceContext @ 00000000025cddc0]  VK_LAYER_NV_optimus
[New Thread 17280.0x458c]
[Thread 17280.0x458c exited with code 0]
[New Thread 17280.0x4b60]
[AVHWDeviceContext @ 00000000025cddc0] Using instance extension VK_KHR_portability_enumeration
[New Thread 17280.0x1140]
[AVHWDeviceContext @ 00000000025cddc0] GPU listing:
[AVHWDeviceContext @ 00000000025cddc0]     0: NVIDIA GeForce RTX 3050 (discrete) (0x2507)
[AVHWDeviceContext @ 00000000025cddc0] Device 0 selected: NVIDIA GeForce RTX 3050 (discrete) (0x2507)
[AVHWDeviceContext @ 00000000025cddc0] Queue families:
[AVHWDeviceContext @ 00000000025cddc0]     0: graphics compute transfer sparse (queues: 16)
[AVHWDeviceContext @ 00000000025cddc0]     1: transfer sparse (queues: 2)
[AVHWDeviceContext @ 00000000025cddc0]     2: compute transfer sparse (queues: 8)
[AVHWDeviceContext @ 00000000025cddc0]     3: transfer decode sparse (queues: 1)
[AVHWDeviceContext @ 00000000025cddc0]     4: transfer encode sparse (queues: 1)
[AVHWDeviceContext @ 00000000025cddc0]     5: transfer sparse (queues: 1)
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_push_descriptor
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_sampler_ycbcr_conversion
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_EXT_descriptor_buffer
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_EXT_shader_atomic_float
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_cooperative_matrix
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_EXT_external_memory_host
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_external_memory_win32
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_external_semaphore_win32
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_video_queue
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_video_decode_queue
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_video_decode_h264
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_video_decode_h265
[AVHWDeviceContext @ 00000000025cddc0] Using device extension VK_KHR_video_decode_av1
[New Thread 17280.0x46b4]
[New Thread 17280.0x15e0]
[New Thread 17280.0x3544]
[New Thread 17280.0x6e0]
[New Thread 17280.0xc44]
[AVHWDeviceContext @ 00000000025cddc0] Using device: NVIDIA GeForce RTX 3050
[AVHWDeviceContext @ 00000000025cddc0] Alignments:
[AVHWDeviceContext @ 00000000025cddc0]     optimalBufferCopyRowPitchAlignment: 1
[AVHWDeviceContext @ 00000000025cddc0]     minMemoryMapAlignment:              64
[AVHWDeviceContext @ 00000000025cddc0]     nonCoherentAtomSize:                64
[AVHWDeviceContext @ 00000000025cddc0]     minImportedHostPointerAlignment:    4096
[AVHWDeviceContext @ 00000000025cddc0] Using queue family 0 (queues: 16) for graphics
[AVHWDeviceContext @ 00000000025cddc0] Using queue family 2 (queues: 8) for compute
[AVHWDeviceContext @ 00000000025cddc0] Using queue family 1 (queues: 2) for transfers
[AVHWDeviceContext @ 00000000025cddc0] Using queue family 3 (queues: 1) for decode
[AVHWDeviceContext @ 00000000025cddc0] Using queue family 4 (queues: 1) for encode
detected 16 logical cores
[h264 @ 0000000007e28240] nal_unit_type: 7(SPS), nal_ref_idc: 1
[h264 @ 0000000007e28240] nal_unit_type: 8(PPS), nal_ref_idc: 1
[h264 @ 0000000007e28240] Decoding VUI
[New Thread 17280.0x324]
[New Thread 17280.0x3a90]
[New Thread 17280.0x1a10]
[New Thread 17280.0x1bbc]
[New Thread 17280.0x288c]
[New Thread 17280.0x426c]
[New Thread 17280.0x4828]
[New Thread 17280.0x4880]
[New Thread 17280.0x29f0]
[New Thread 17280.0x3e40]
[New Thread 17280.0x133c]
[New Thread 17280.0x3974]
[New Thread 17280.0x4abc]
[New Thread 17280.0x4378]
[New Thread 17280.0x442c]
[New Thread 17280.0x47cc]
Successfully opened the file.
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> wrapped_avframe (native))
[vost#0:0/wrapped_avframe @ 000000000284f1c0] Starting thread...
[New Thread 17280.0x4b8c]
[vf#0:0 @ 0000000002980440] Starting thread...
[New Thread 17280.0x1154]
[vist#0:0/h264 @ 0000000000104b00] [dec:h264 @ 000000000284bd00] Starting thread...
[New Thread 17280.0x2db8]
[in#0/h264 @ 00000000000f9d80] Starting thread...
[New Thread 17280.0x580]
Press [q] to stop, [?] for help
[h264 @ 0000000007e28240] nal_unit_type: 7(SPS), nal_ref_idc: 1
[h264 @ 0000000007e28240] nal_unit_type: 8(PPS), nal_ref_idc: 1
[h264 @ 0000000007e28240] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0000000007e28240] nal_unit_type: 5(IDR), nal_ref_idc: 1
    Last message repeated 1 times
[h264 @ 0000000007e28240] Decoding VUI
[h264 @ 0000000007e28240] Format vulkan chosen by get_format().
[h264 @ 0000000007e28240] Format vulkan requires hwaccel h264_vulkan initialisation.
[h264 @ 0000000007e28240] Decoder capabilities for h264 profile "Main":
[h264 @ 0000000007e28240]     Maximum level: 52 (stream 13)
[h264 @ 0000000007e28240]     Width: from 48 to 4096
[h264 @ 0000000007e28240]     Height: from 16 to 4096
[h264 @ 0000000007e28240]     Width alignment: 16
[h264 @ 0000000007e28240]     Height alignment: 16
[h264 @ 0000000007e28240]     Bitstream offset alignment: 256
[h264 @ 0000000007e28240]     Bitstream size alignment: 256
[h264 @ 0000000007e28240]     Maximum references: 17
[h264 @ 0000000007e28240]     Maximum active references: 16
[h264 @ 0000000007e28240]     Codec header name: 'VK_STD_vulkan_video_codec_h264_decode' (driver), 'VK_STD_vulkan_video_codec_h264_decode' (compiled)
[h264 @ 0000000007e28240]     Codec header version: 1.0.0 (driver), 1.0.0 (compiled)
[h264 @ 0000000007e28240]     Decode modes: reuse_dst_dpb
[h264 @ 0000000007e28240]     Capability flags: none
[h264 @ 0000000007e28240] Choosing best pixel format for decoding from 1:
[h264 @ 0000000007e28240]     nv12* (Vulkan ID: 1000156003)
[h264 @ 0000000007e28240] Chosen frame pixfmt: nv12 (Vulkan ID: 1000156003)
[h264 @ 0000000007e28240] Allocating 4096 bytes in bind index 0 for video session
[h264 @ 0000000007e28240] Allocating 16384 bytes in bind index 1 for video session
[h264 @ 0000000007e28240] Allocating 71303168 bytes in bind index 2 for video session
[h264 @ 0000000007e28240] Allocating 225280 bytes in bind index 3 for video session
[h264 @ 0000000007e28240] Vulkan decoder initialization sucessful
[h264 @ 0000000007e28240] Reinit context to 512x384, pix_fmt: vulkan
[h264 @ 0000000007e28240] ct_type:0 pic_struct:0
[h264 @ 0000000007e28240] no picture
[h264 @ 0000000007e28240] Created frame parameters: 1 SPS 1 PPS
[h264 @ 000000000d9a9800] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0000000007e28240] Decoding frame, 537 bytes, 2 slices
[h264 @ 000000000d9a9800] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 1
    Last message repeated 1 times
[h264 @ 000000000d9a9800] ct_type:0 pic_struct:0
[h264 @ 000000000d9a9800] Decoding frame, 38 bytes, 2 slices

Thread 14 received signal SIGSEGV, Segmentation fault.
[Switching to Thread 17280.0x3a90]
0x00007ff7c1f1e223 in ff_vk_exec_add_dep_frame (s=0x12b42840, e=0x12bf0b80, f=0x0, wait_stage=67108864,
    signal_stage=67108864) at ./libavutil/vulkan.c:610
610         AVHWFramesContext *hwfc = (AVHWFramesContext *)f->hw_frames_ctx->data;
(gdb) bt
#0  0x00007ff7c1f1e223 in ff_vk_exec_add_dep_frame (s=0x12b42840, e=0x12bf0b80, f=0x0, wait_stage=67108864,
    signal_stage=67108864) at ./libavutil/vulkan.c:610
#1  0x00007ff7c1a8642f in ff_vk_decode_frame (avctx=0xd9a9800, pic=0x975d340, vp=0x12c3ffc0, rpic=0x130bfa70,
    rvkp=0x130bfb90) at libavcodec/vulkan_decode.c:539
#2  0x00007ff7c1a8af13 in vk_h264_end_frame (avctx=0xd9a9800) at libavcodec/vulkan_h264.c:540
#3  0x00007ff7c1de285c in ff_h264_field_end (h=0x11dc0dc0, sl=0x26d3300, in_setup=0) at libavcodec/h264_picture.c:207
#4  0x00007ff7c1445645 in h264_decode_frame (avctx=0xd9a9800, pict=0x11e90d80, got_frame=0xd97e200, avpkt=0x9647b80)
    at libavcodec/h264dec.c:1086
#5  0x00007ff7c16cc22a in frame_worker_thread (arg=0xd97e190) at libavcodec/pthread_frame.c:223
#6  0x00007ff7c16cbc8a in win32thread_worker (arg=0xd97e198) at ./compat/w32pthreads.h:78
#7  0x00007ffd08b79333 in ucrtbase!_recalloc () from C:\Windows\System32\ucrtbase.dll
#8  0x00007ffd0995257d in KERNEL32!BaseThreadInitThunk () from C:\Windows\System32\kernel32.dll
#9  0x00007ffd0b2eaa48 in ntdll!RtlUserThreadStart () from C:\Windows\SYSTEM32\ntdll.dll
#10 0x0000000000000000 in ?? ()
(gdb) disass $pc-32,$pc+32
Dump of assembler code from 0x7ff7c1f1e203 to 0x7ff7c1f1e243:
   0x00007ff7c1f1e203 <ff_vk_exec_add_dep_buf+322>:     ret
   0x00007ff7c1f1e204 <ff_vk_exec_add_dep_frame+0>:     push   %rbp
   0x00007ff7c1f1e205 <ff_vk_exec_add_dep_frame+1>:     mov    %rsp,%rbp
   0x00007ff7c1f1e208 <ff_vk_exec_add_dep_frame+4>:     sub    $0xc0,%rsp
   0x00007ff7c1f1e20f <ff_vk_exec_add_dep_frame+11>:    mov    %rcx,0x10(%rbp)
   0x00007ff7c1f1e213 <ff_vk_exec_add_dep_frame+15>:    mov    %rdx,0x18(%rbp)
   0x00007ff7c1f1e217 <ff_vk_exec_add_dep_frame+19>:    mov    %r8,0x20(%rbp)
   0x00007ff7c1f1e21b <ff_vk_exec_add_dep_frame+23>:    mov    %r9,0x28(%rbp)
   0x00007ff7c1f1e21f <ff_vk_exec_add_dep_frame+27>:    mov    0x20(%rbp),%rax
=> 0x00007ff7c1f1e223 <ff_vk_exec_add_dep_frame+31>:    mov    0x160(%rax),%rax
   0x00007ff7c1f1e22a <ff_vk_exec_add_dep_frame+38>:    mov    0x8(%rax),%rax
   0x00007ff7c1f1e22e <ff_vk_exec_add_dep_frame+42>:    mov    %rax,-0x10(%rbp)
   0x00007ff7c1f1e232 <ff_vk_exec_add_dep_frame+46>:    mov    -0x10(%rbp),%rax
   0x00007ff7c1f1e236 <ff_vk_exec_add_dep_frame+50>:    mov    0x18(%rax),%rax
   0x00007ff7c1f1e23a <ff_vk_exec_add_dep_frame+54>:    mov    %rax,-0x18(%rbp)
   0x00007ff7c1f1e23e <ff_vk_exec_add_dep_frame+58>:    mov    0x20(%rbp),%rax
   0x00007ff7c1f1e242 <ff_vk_exec_add_dep_frame+62>:    mov    (%rax),%rax
End of assembler dump.
(gdb) info all-registers
rax            0x0                 0
rbx            0x3b9b27c0          1000024000
rcx            0x12b42840          313796672
rdx            0x12bf0b80          314510208
rsi            0x1000000000        68719476736
rdi            0x130beb80          319548288
rbp            0x130be9a0          0x130be9a0
rsp            0x130be8e0          0x130be8e0
r8             0x0                 0
r9             0x4000000           67108864
r10            0x12c3a260          314810976
r11            0xffffffff          4294967295
r12            0x3b9b27c0          1000024000
r13            0x4000000           67108864
r14            0x0                 0
r15            0x4000000           67108864
rip            0x7ff7c1f1e223      0x7ff7c1f1e223 <ff_vk_exec_add_dep_frame+31>
eflags         0x10202             [ IF RF ]
cs             0x33                51
ss             0x2b                43
ds             0x2b                43
es             0x2b                43
fs             0x53                83
gs             0x2b                43
st0            0                   (raw 0x00000000000000000000)
st1            0                   (raw 0x00000000000000000000)
st2            0                   (raw 0x00000000000000000000)
st3            0                   (raw 0x00000000000000000000)
st4            0                   (raw 0x00000000000000000000)
--Type <RET> for more, q to quit, c to continue without paging--c
st5            0                   (raw 0x00000000000000000000)
st6            0                   (raw 0x00000000000000000000)
st7            0                   (raw 0x00000000000000000000)
fctrl          0x27f               639
fstat          0x0                 0
ftag           0x0                 0
fiseg          0x0                 0
fioff          0x0                 0
foseg          0x0                 0
fooff          0x0                 0
fop            0x0                 0
xmm0           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm1           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm2           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm3           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm4           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm5           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm6           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm7           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm8           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm9           {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm10          {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm11          {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm12          {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm13          {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm14          {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
xmm15          {v8_bfloat16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v8_half = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0}, uint128 = 0x0}
mxcsr          0x1fa0              [ PE IM DM ZM OM UM PM ]
(gdb)

OS: Windows 11 Pro
GPU: GeForce RTX 3050
Driver: 552.22-desktop-win10-win11-64bit-international-dch-whql

Attachments (1)

moonlight.264 (186.6 KB ) - added by HolyWu 2 weeks ago.

Download all attachments as: .zip

Change History (3)

by HolyWu, 2 weeks ago

Attachment: moonlight.264 added

comment:1 by HolyWu, 13 days ago

Note that using vk_video_decoder from https://github.com/nvpro-samples/vk_video_samples works fine for me, so it's probably not a driver's issue.

comment:2 by bermond, 13 days ago

This looks like to be a duplicate of ticket #10847.

The issue is not limited to Windows systems, as I can confirm that vulkan decoding is also broken in GNU/Linux.

Note: See TracTickets for help on using tickets.