[FFmpeg-trac] #10046(avfilter:new): Vulkan filters failing with "There are no supported modifiers for the given sw_format" message
FFmpeg
trac at avcodec.org
Thu Nov 17 22:47:59 EET 2022
#10046: Vulkan filters failing with "There are no supported modifiers for the given
sw_format" message
-------------------------------------+-------------------------------------
Reporter: Dennis E. | Type: defect
Mungai |
Status: new | Priority: normal
Component: avfilter | Version: git-
| master
Keywords: vulkan | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug:
Run this command with any input, quite trivial to test with either
{{{libplacebo}}} or even {{{scale_vulkan}}}:
{{{
ffmpeg -v verbose -init_hw_device vulkan=vul -i "overlay.mpg" -vf
"hwupload,libplacebo=w=1920:h=1080:format=yuv420p,hwdownload,format=yuv420p"
"output.mkv" -y
}}}
The command(s) will fail with the warnings shown:
{{{
ffmpeg -v verbose -init_hw_device vulkan=vul -i "overlay.mpg" -vf
"hwupload,libplacebo=w=1920:h=1080:format=yuv420p,hwdownload,format=yuv420p"
"output.mkv" -y
ffmpeg version N-109125-g2e53376a9b Copyright (c) 2000-2022 the FFmpeg
developers
built with gcc 11 (Ubuntu 11.3.0-1ubuntu1~22.04)
configuration: --pkg-config-flags=--static --enable-static --disable-
shared --prefix=/home/brainiarc7 --bindir=/home/brainiarc7/bin --enable-
cuda-nvcc --enable-cuvid --enable-libnpp --extra-
cflags=-I/usr/local/cuda/include/ --extra-ldflags=-L/usr/local/cuda/lib64/
--enable-nvenc --enable-libass --enable-libfreetype --disable-debug
--enable-gpl --cpu=native --enable-libfdk-aac --enable-libx264 --enable-
libx265 --enable-openssl --enable-librtmp --enable-libzvbi --enable-
version3 --enable-opencl --enable-pic --enable-librav1e --enable-
libglslang --enable-vulkan --enable-libsrt --enable-libsvtav1 --enable-
libvpx --enable-libplacebo --enable-librav1e --nvccflags='-arch=native'
--extra-libs='-lpthread -lm -lz -ldl' --enable-nonfree
libavutil 57. 42.100 / 57. 42.100
libavcodec 59. 52.102 / 59. 52.102
libavformat 59. 34.101 / 59. 34.101
libavdevice 59. 8.101 / 59. 8.101
libavfilter 8. 50.100 / 8. 50.100
libswscale 6. 8.112 / 6. 8.112
libswresample 4. 9.100 / 4. 9.100
libpostproc 56. 7.100 / 56. 7.100
[AVHWDeviceContext @ 0x55cb387e7a40] Supported validation layers:
[AVHWDeviceContext @ 0x55cb387e7a40] VK_LAYER_MESA_device_select
[AVHWDeviceContext @ 0x55cb387e7a40] VK_LAYER_LUNARG_gfxreconstruct
[AVHWDeviceContext @ 0x55cb387e7a40] VK_LAYER_LUNARG_screenshot
[AVHWDeviceContext @ 0x55cb387e7a40] VK_LAYER_MESA_overlay
[AVHWDeviceContext @ 0x55cb387e7a40] VK_LAYER_KHRONOS_validation
[AVHWDeviceContext @ 0x55cb387e7a40] VK_LAYER_LUNARG_monitor
[AVHWDeviceContext @ 0x55cb387e7a40] VK_LAYER_LUNARG_api_dump
[AVHWDeviceContext @ 0x55cb387e7a40] VK_LAYER_KHRONOS_profiles
[AVHWDeviceContext @ 0x55cb387e7a40] VK_LAYER_KHRONOS_synchronization2
[AVHWDeviceContext @ 0x55cb387e7a40] GPU listing:
[AVHWDeviceContext @ 0x55cb387e7a40] 0: NVIDIA GeForce RTX 2080
(discrete) (0x1ed0)
[AVHWDeviceContext @ 0x55cb387e7a40] 1: llvmpipe (LLVM 13.0.1, 256
bits) (software) (0x0)
[AVHWDeviceContext @ 0x55cb387e7a40] Device 0 selected: NVIDIA GeForce RTX
2080 (discrete) (0x1ed0)
[AVHWDeviceContext @ 0x55cb387e7a40] Queue families:
[AVHWDeviceContext @ 0x55cb387e7a40] 0: graphics compute transfer
sparse (queues: 16)
[AVHWDeviceContext @ 0x55cb387e7a40] 1: transfer sparse (queues: 2)
[AVHWDeviceContext @ 0x55cb387e7a40] 2: compute transfer sparse
(queues: 8)
[AVHWDeviceContext @ 0x55cb387e7a40] Using device extension
VK_KHR_push_descriptor
[AVHWDeviceContext @ 0x55cb387e7a40] Using device extension
VK_KHR_sampler_ycbcr_conversion
[AVHWDeviceContext @ 0x55cb387e7a40] Using device extension
VK_KHR_synchronization2
[AVHWDeviceContext @ 0x55cb387e7a40] Using device extension
VK_KHR_external_memory_fd
[AVHWDeviceContext @ 0x55cb387e7a40] Using device extension
VK_EXT_external_memory_dma_buf
[AVHWDeviceContext @ 0x55cb387e7a40] Using device extension
VK_EXT_image_drm_format_modifier
[AVHWDeviceContext @ 0x55cb387e7a40] Using device extension
VK_KHR_external_semaphore_fd
[AVHWDeviceContext @ 0x55cb387e7a40] Using device extension
VK_EXT_external_memory_host
[AVHWDeviceContext @ 0x55cb387e7a40] Using device: NVIDIA GeForce RTX 2080
[AVHWDeviceContext @ 0x55cb387e7a40] Alignments:
[AVHWDeviceContext @ 0x55cb387e7a40]
optimalBufferCopyRowPitchAlignment: 1
[AVHWDeviceContext @ 0x55cb387e7a40] minMemoryMapAlignment:
64
[AVHWDeviceContext @ 0x55cb387e7a40] minImportedHostPointerAlignment:
4096
[AVHWDeviceContext @ 0x55cb387e7a40] Using queue family 0 (queues: 16) for
graphics
[AVHWDeviceContext @ 0x55cb387e7a40] Using queue family 1 (queues: 2) for
transfers
[AVHWDeviceContext @ 0x55cb387e7a40] Using queue family 2 (queues: 8) for
compute
[mpegts @ 0x55cb38b82440] parser not found for codec none, packets or
times may be invalid.
[h264 @ 0x55cb38b88180] Reinit context to 1920x1088, pix_fmt: yuv420p
[h264 @ 0x55cb38b88180] mmco: unref short failure
[h264 @ 0x55cb38b88180] Increasing reorder buffer to 2
[h264 @ 0x55cb38b88180] mmco: unref short failure
[h264 @ 0x55cb38b88180] Increasing reorder buffer to 3
[mpegts @ 0x55cb38b82440] max_analyze_duration 7000000 reached at 7000000
microseconds st:1
[mpegts @ 0x55cb38b82440] start time for stream 0 is not set in
estimate_timings_from_pts
[mpegts @ 0x55cb38b82440] PES packet size mismatch
[mpegts @ 0x55cb38b82440] Packet corrupt (stream = 2, dts = 5102226151).
[mpegts @ 0x55cb38b82440] PES packet size mismatch
[mpegts @ 0x55cb38b82440] Packet corrupt (stream = 3, dts = 5102226151).
[mpegts @ 0x55cb38b82440] PES packet size mismatch
[mpegts @ 0x55cb38b82440] Packet corrupt (stream = 4, dts = 5102223271).
[mpegts @ 0x55cb38b82440] Could not find codec parameters for stream 7
(Unknown: none ([5][0][0][0] / 0x0005)): unknown codec
Consider increasing the value for the 'analyzeduration' (0) and
'probesize' (5000000) options
Input #0, mpegts, from 'overlay.mpg':
Duration: 00:00:16.63, start: 56675.657678, bitrate: 5128 kb/s
Program 1537
Metadata:
service_name : TF1
service_provider: SMR6
Stream #0:1[0x78]: Video: h264 (High), 1 reference frame ([27][0][0][0]
/ 0x001B), yuv420p(tv, bt709, top first, left), 1920x1080 (1920x1088) [SAR
1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn
Stream #0:2[0x82](fra): Audio: eac3 ([6][0][0][0] / 0x0006), 48000 Hz,
stereo, fltp, 128 kb/s
Stream #0:3[0x83](qaa): Audio: eac3 ([6][0][0][0] / 0x0006), 48000 Hz,
stereo, fltp, 128 kb/s
Stream #0:4[0x84](fra): Audio: eac3 ([6][0][0][0] / 0x0006), 48000 Hz,
stereo, fltp, 96 kb/s (visual impaired) (descriptions)
Stream #0:5[0x96](fra): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006)
(hearing impaired)
Stream #0:6[0x97](fra): Subtitle: dvb_subtitle ([6][0][0][0] / 0x0006)
Stream #0:7[0xaa]: Unknown: none ([5][0][0][0] / 0x0005)
Program 1538
Metadata:
service_name : NRJ12
service_provider: SMR6
Program 1542
Metadata:
service_name : TMC
service_provider: SMR6
Program 1544
Metadata:
service_name : TFX
service_provider: SMR6
Program 1545
Metadata:
service_name : LCP
service_provider: SMR6
No Program
Stream #0:0[0x12]: Data: epg
Stream mapping:
Stream #0:1 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #0:2 -> #0:1 (eac3 (native) -> ac3 (native))
Press [q] to stop, [?] for help
[h264 @ 0x55cb3c46d000] Reinit context to 1920x1088, pix_fmt: yuv420p
[h264 @ 0x55cb3c55d400] mmco: unref short failure
[graph_1_in_0_2 @ 0x55cb3c8fcd40] tb:1/48000 samplefmt:fltp
samplerate:48000 chlayout:stereo
[h264 @ 0x55cb3c4b5380] mmco: unref short failure
[libplacebo @ 0x55cb3bb11f80] Initialized libplacebo v5.229.1-30-gfc6cf3a
(API v233)
[graph 0 input from stream 0:1 @ 0x55cb3c7c4e00] w:1920 h:1080
pixfmt:yuv420p tb:1/90000 fr:25/1 sar:1/1
[libplacebo @ 0x55cb3bb11f80] Imported vulkan device properties:
[libplacebo @ 0x55cb3bb11f80] Device Name: NVIDIA GeForce RTX 2080
[libplacebo @ 0x55cb3bb11f80] Device ID: 10de:1ed0
[libplacebo @ 0x55cb3bb11f80] Device UUID:
E4:37:E0:85:C6:8A:48:1D:0F:32:2A:CF:2D:50:6F:69
[libplacebo @ 0x55cb3bb11f80] Driver version: -2112929472
[libplacebo @ 0x55cb3bb11f80] API version: 1.3.205
[libplacebo @ 0x55cb3bb11f80] Restricting API version to 1.2.0... new
version 1.2.0
[libplacebo @ 0x55cb3bb11f80] Memory heaps supported by device:
[libplacebo @ 0x55cb3bb11f80] 0: flags 0x1 size 8192M
[libplacebo @ 0x55cb3bb11f80] 1: flags 0x0 size 46G
[libplacebo @ 0x55cb3bb11f80] 2: flags 0x1 size 246M
[libplacebo @ 0x55cb3bb11f80] Memory summary: 0 used 0 res 0
alloc, efficiency 100.00%, utilization 100.00%
[libplacebo @ 0x55cb3bb11f80] shaderc SPIR-V version 1.6 rev 1
[libplacebo @ 0x55cb3bb11f80] Initialized SPIR-V compiler 'shaderc'
[libplacebo @ 0x55cb3bb11f80] DRM format modifier LINEAR of format rgba8
supports fewer caps (0x1d401) than optimal tiling (0x1dd83), may result in
limited capability!
[libplacebo @ 0x55cb3bb11f80] DRM format modifier LINEAR of format bgra8
supports fewer caps (0x1d401) than optimal tiling (0x1dd83), may result in
limited capability!
[libplacebo @ 0x55cb3bb11f80] DRM format modifier LINEAR of format bgr565
supports fewer caps (0x1d401) than optimal tiling (0x1dd81), may result in
limited capability!
[libplacebo @ 0x55cb3bb11f80] DRM format modifier LINEAR of format bgr5a1
supports fewer caps (0x1d401) than optimal tiling (0x1dd81), may result in
limited capability!
[libplacebo @ 0x55cb3bb11f80] DRM format modifier LINEAR of format rgb10a2
supports fewer caps (0x1d401) than optimal tiling (0x1dd83), may result in
limited capability!
[libplacebo @ 0x55cb3bb11f80] DRM format modifier LINEAR of format bgr10a2
supports fewer caps (0x1d401) than optimal tiling (0x1dd81), may result in
limited capability!
[libplacebo @ 0x55cb3bb11f80] GPU information:
[libplacebo @ 0x55cb3bb11f80] GLSL version: 450 (vulkan)
[libplacebo @ 0x55cb3bb11f80] max_shmem_size: 49152
[libplacebo @ 0x55cb3bb11f80] max_group_threads: 1024
[libplacebo @ 0x55cb3bb11f80] max_group_size[0]: 1024
[libplacebo @ 0x55cb3bb11f80] max_group_size[1]: 1024
[libplacebo @ 0x55cb3bb11f80] max_group_size[2]: 64
[libplacebo @ 0x55cb3bb11f80] subgroup_size: 32
[libplacebo @ 0x55cb3bb11f80] min_gather_offset: -32
[libplacebo @ 0x55cb3bb11f80] max_gather_offset: 31
[libplacebo @ 0x55cb3bb11f80] Limits:
[libplacebo @ 0x55cb3bb11f80] thread_safe: 1
[libplacebo @ 0x55cb3bb11f80] callbacks: 1
[libplacebo @ 0x55cb3bb11f80] max_buf_size:
18446744073709551615
[libplacebo @ 0x55cb3bb11f80] max_ubo_size: 65536
[libplacebo @ 0x55cb3bb11f80] max_ssbo_size: 4294967295
[libplacebo @ 0x55cb3bb11f80] max_vbo_size:
18446744073709551615
[libplacebo @ 0x55cb3bb11f80] max_mapped_size:
18446744073709551615
[libplacebo @ 0x55cb3bb11f80] max_buffer_texels: 134217728
[libplacebo @ 0x55cb3bb11f80] align_host_ptr: 4096
[libplacebo @ 0x55cb3bb11f80] max_tex_1d_dim: 32768
[libplacebo @ 0x55cb3bb11f80] max_tex_2d_dim: 32768
[libplacebo @ 0x55cb3bb11f80] max_tex_3d_dim: 16384
[libplacebo @ 0x55cb3bb11f80] blittable_1d_3d: 1
[libplacebo @ 0x55cb3bb11f80] buf_transfer: 1
[libplacebo @ 0x55cb3bb11f80] align_tex_xfer_pitch: 1
[libplacebo @ 0x55cb3bb11f80] align_tex_xfer_offset: 4
[libplacebo @ 0x55cb3bb11f80] max_variable_comps: 0
[libplacebo @ 0x55cb3bb11f80] max_constants:
18446744073709551615
[libplacebo @ 0x55cb3bb11f80] max_pushc_size: 256
[libplacebo @ 0x55cb3bb11f80] align_vertex_stride: 1
[libplacebo @ 0x55cb3bb11f80] max_dispatch[0]: 2147483647
[libplacebo @ 0x55cb3bb11f80] max_dispatch[1]: 65535
[libplacebo @ 0x55cb3bb11f80] max_dispatch[2]: 65535
[libplacebo @ 0x55cb3bb11f80] fragment_queues: 16
[libplacebo @ 0x55cb3bb11f80] compute_queues: 8
[libplacebo @ 0x55cb3bb11f80] External API interop:
[libplacebo @ 0x55cb3bb11f80] UUID:
E4:37:E0:85:C6:8A:48:1D:0F:32:2A:CF:2D:50:6F:69
[libplacebo @ 0x55cb3bb11f80] PCI: 0000:01:00:0
[libplacebo @ 0x55cb3bb11f80] buf export caps: 0x19
[libplacebo @ 0x55cb3bb11f80] buf import caps: 0x19
[libplacebo @ 0x55cb3bb11f80] tex export caps: 0x11
[libplacebo @ 0x55cb3bb11f80] tex import caps: 0x11
[libplacebo @ 0x55cb3bb11f80] sync export caps: 0x1
[libplacebo @ 0x55cb3bb11f80] sync import caps: 0x0
[AVHWFramesContext @ 0x55cb3c70f000] There are no supported modifiers for
the given sw_format
[Parsed_hwupload_0 @ 0x55cb3bb0f380] Failed to configure output pad on
Parsed_hwupload_0
Error reinitializing filters!
Failed to inject frame into filter network: Invalid argument
Error while processing the decoded data for stream #0:1
[AVIOContext @ 0x55cb3a8dd800] Statistics: 0 bytes written, 0 seeks, 0
writeouts
Terminating demuxer thread 0
[AVIOContext @ 0x55cb38b8b0c0] Statistics: 5886096 bytes read, 3 seeks
Conversion failed!
}}}
FFmpeg was built from git tip master minutes ago before testing.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/10046>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list