codexffmpeg icon indicating copy to clipboard operation
codexffmpeg copied to clipboard

libplacebo not working at all

Open clementiae opened this issue 1 year ago • 1 comments

Ffmpeg build: ffmpeg-2024-10-31-git-87068b9600-full_build

libplacebo doesn't work at all. Empty 0KB video file is created, but nothing is encoded. Just nothing happens. No error is yielded.

Verbose libplacebo-related parts of the log:

[AVHWDeviceContext @ 00000269a5f0a600] Supported layers:
[AVHWDeviceContext @ 00000269a5f0a600]  VK_LAYER_NV_optimus
[AVHWDeviceContext @ 00000269a5f0a600]  VK_LAYER_OBS_HOOK
[AVHWDeviceContext @ 00000269a5f0a600]  VK_LAYER_RTSS
[AVHWDeviceContext @ 00000269a5f0a600]  VK_LAYER_VALVE_steam_overlay
[AVHWDeviceContext @ 00000269a5f0a600]  VK_LAYER_VALVE_steam_fossilize
[AVHWDeviceContext @ 00000269a5f0a600]  VK_LAYER_OBS_HOOK
    Last message repeated 1 times
[AVHWDeviceContext @ 00000269a5f0a600] Using instance extension VK_KHR_portability_enumeration
[AVHWDeviceContext @ 00000269a5f0a600] GPU listing:
[AVHWDeviceContext @ 00000269a5f0a600]     0: NVIDIA GeForce GTX 1650 (discrete) (0x1f0a)
[AVHWDeviceContext @ 00000269a5f0a600] Device 0 selected: NVIDIA GeForce GTX 1650 (discrete) (0x1f0a)
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_push_descriptor
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_EXT_descriptor_buffer
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_EXT_shader_atomic_float
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_cooperative_matrix
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_EXT_shader_object
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_video_maintenance1
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_EXT_external_memory_host
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_external_memory_win32
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_external_semaphore_win32
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_video_queue
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_video_encode_queue
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_video_decode_queue
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_video_encode_h264
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_video_decode_h264
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_video_encode_h265
[AVHWDeviceContext @ 00000269a5f0a600] Using device extension VK_KHR_video_decode_h265
[AVHWDeviceContext @ 00000269a5f0a600] Queue families:
[AVHWDeviceContext @ 00000269a5f0a600]     0: graphics compute transfer sparse (queues: 16)
[AVHWDeviceContext @ 00000269a5f0a600]     1: transfer sparse (queues: 2)
[AVHWDeviceContext @ 00000269a5f0a600]     2: compute transfer sparse (queues: 8)
[AVHWDeviceContext @ 00000269a5f0a600]     3: transfer decode sparse (queues: 1)
[AVHWDeviceContext @ 00000269a5f0a600]     4: transfer encode sparse (queues: 1)
[AVHWDeviceContext @ 00000269a5f0a600] Using device: NVIDIA GeForce GTX 1650
[AVHWDeviceContext @ 00000269a5f0a600] Alignments:
[AVHWDeviceContext @ 00000269a5f0a600]     optimalBufferCopyRowPitchAlignment: 1
[AVHWDeviceContext @ 00000269a5f0a600]     minMemoryMapAlignment:              64
[AVHWDeviceContext @ 00000269a5f0a600]     nonCoherentAtomSize:                64
[AVHWDeviceContext @ 00000269a5f0a600]     minImportedHostPointerAlignment:    4096
[AVHWDeviceContext @ 00000269a5f0a600] Using queue family 0 (queues: 16) for graphics
[AVHWDeviceContext @ 00000269a5f0a600] Using queue family 2 (queues: 8) for compute
[AVHWDeviceContext @ 00000269a5f0a600] Using queue family 1 (queues: 2) for transfers
[AVHWDeviceContext @ 00000269a5f0a600] Using queue family 3 (queues: 1) for decode
[AVHWDeviceContext @ 00000269a5f0a600] Using queue family 4 (queues: 1) for encode
[h264 @ 00000269a5f306c0] Reinit context to 1920x1088, pix_fmt: yuv420p

[out#0/matroska @ 00000269a5f1be80] No explicit maps, mapping streams automatically...
[vost#0:0/libx264 @ 00000269a5f93340] Created video stream from input stream 0:0
[libplacebo @ 00000269b5e7aa80] Initialized libplacebo v7.349.0 (v7.349.0-21-g863d142) (API v349)
[libplacebo @ 00000269b5e7aa80] Imported vulkan device properties:
[libplacebo @ 00000269b5e7aa80]     Device Name: NVIDIA GeForce GTX 1650
[libplacebo @ 00000269b5e7aa80]     Device ID: 10de:1f0a
[libplacebo @ 00000269b5e7aa80]     Device UUID: 13:FA:06:31:96:AA:97:58:0A:18:53:33:C1:B8:E5:BB
[libplacebo @ 00000269b5e7aa80]     Driver version: 89d58000
[libplacebo @ 00000269b5e7aa80]     API version: 1.3.277
[libplacebo @ 00000269b5e7aa80] Restricting API version to 1.3.0... new version 1.3.0
[libplacebo @ 00000269b5e7aa80] Memory heaps supported by device:
[libplacebo @ 00000269b5e7aa80]     0: flags 0x1 size 3935M
[libplacebo @ 00000269b5e7aa80]     1: flags 0x0 size 8167M
[libplacebo @ 00000269b5e7aa80]     2: flags 0x1 size  214M
[libplacebo @ 00000269b5e7aa80] Memory summary:     0 used     0 res     0 alloc, efficiency 100.00%, utilization 100.00%, max page:  245M
[libplacebo @ 00000269b5e7aa80] shaderc SPIR-V version 1.6 rev 1
[libplacebo @ 00000269b5e7aa80] Initialized SPIR-V compiler 'shaderc'
[libplacebo @ 00000269b5e7aa80] GPU information:
[libplacebo @ 00000269b5e7aa80]     GLSL version: 450 (vulkan)
[libplacebo @ 00000269b5e7aa80]       max_shmem_size:            49152
[libplacebo @ 00000269b5e7aa80]       max_group_threads:         1024
[libplacebo @ 00000269b5e7aa80]       max_group_size[0]:         1024
[libplacebo @ 00000269b5e7aa80]       max_group_size[1]:         1024
[libplacebo @ 00000269b5e7aa80]       max_group_size[2]:         64
[libplacebo @ 00000269b5e7aa80]       subgroup_size:             32
[libplacebo @ 00000269b5e7aa80]       min_gather_offset:         -32
[libplacebo @ 00000269b5e7aa80]       max_gather_offset:         31
[libplacebo @ 00000269b5e7aa80]     Limits:
[libplacebo @ 00000269b5e7aa80]       thread_safe:               1
[libplacebo @ 00000269b5e7aa80]       callbacks:                 1
[libplacebo @ 00000269b5e7aa80]       max_buf_size:              8564391936
[libplacebo @ 00000269b5e7aa80]       max_ubo_size:              65536
[libplacebo @ 00000269b5e7aa80]       max_ssbo_size:             4294967295
[libplacebo @ 00000269b5e7aa80]       max_vbo_size:              4126146560
[libplacebo @ 00000269b5e7aa80]       max_mapped_size:           8564391936
[libplacebo @ 00000269b5e7aa80]       max_buffer_texels:         134217728
[libplacebo @ 00000269b5e7aa80]       align_host_ptr:            4096
[libplacebo @ 00000269b5e7aa80]       host_cached:               1
[libplacebo @ 00000269b5e7aa80]       max_tex_1d_dim:            32768
[libplacebo @ 00000269b5e7aa80]       max_tex_2d_dim:            32768
[libplacebo @ 00000269b5e7aa80]       max_tex_3d_dim:            16384
[libplacebo @ 00000269b5e7aa80]       blittable_1d_3d:           1
[libplacebo @ 00000269b5e7aa80]       buf_transfer:              1
[libplacebo @ 00000269b5e7aa80]       align_tex_xfer_pitch:      1
[libplacebo @ 00000269b5e7aa80]       align_tex_xfer_offset:     4
[libplacebo @ 00000269b5e7aa80]       max_variable_comps:        0
[libplacebo @ 00000269b5e7aa80]       max_constants:             18446744073709551615
[libplacebo @ 00000269b5e7aa80]       max_pushc_size:            256
[libplacebo @ 00000269b5e7aa80]       align_vertex_stride:       1
[libplacebo @ 00000269b5e7aa80]       max_dispatch[0]:           2147483647
[libplacebo @ 00000269b5e7aa80]       max_dispatch[1]:           65535
[libplacebo @ 00000269b5e7aa80]       max_dispatch[2]:           65535
[libplacebo @ 00000269b5e7aa80]       fragment_queues:           16
[libplacebo @ 00000269b5e7aa80]       compute_queues:            8
[libplacebo @ 00000269b5e7aa80]     External API interop:
[libplacebo @ 00000269b5e7aa80]       UUID: 13:FA:06:31:96:AA:97:58:0A:18:53:33:C1:B8:E5:BB
[libplacebo @ 00000269b5e7aa80]       PCI: 0000:20:00:0
[libplacebo @ 00000269b5e7aa80]       buf export caps: 0x16
[libplacebo @ 00000269b5e7aa80]       buf import caps: 0x16
[libplacebo @ 00000269b5e7aa80]       tex export caps: 0x16
[libplacebo @ 00000269b5e7aa80]       tex import caps: 0x16
[libplacebo @ 00000269b5e7aa80]       sync export caps: 0x6
[libplacebo @ 00000269b5e7aa80]       sync import caps: 0x0
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
[vost#0:0/libx264 @ 00000269a5f93340] Starting thread...
[vf#0:0 @ 00000269a5f8c880] Starting thread...
[vist#0:0/h264 @ 00000269a5f2d8c0] [dec:h264 @ 00000269a5f9d600] Starting thread...
[in#0/matroska,webm @ 00000269a5f1cec0] Starting thread...
Press [q] to stop, [?] for help
[h264 @ 00000269a5f4de40] Reinit context to 1920x1088, pix_fmt: yuv420p
[libplacebo @ 00000269baf2f900] Initialized libplacebo v7.349.0 (v7.349.0-21-g863d142) (API v349)
[libplacebo @ 00000269baf2f900] Imported vulkan device properties:
[libplacebo @ 00000269baf2f900]     Device Name: NVIDIA GeForce GTX 1650
[libplacebo @ 00000269baf2f900]     Device ID: 10de:1f0a
[libplacebo @ 00000269baf2f900]     Device UUID: 13:FA:06:31:96:AA:97:58:0A:18:53:33:C1:B8:E5:BB
[libplacebo @ 00000269baf2f900]     Driver version: 89d58000
[libplacebo @ 00000269baf2f900]     API version: 1.3.277
[libplacebo @ 00000269baf2f900] Restricting API version to 1.3.0... new version 1.3.0
[libplacebo @ 00000269baf2f900] Memory heaps supported by device:
[libplacebo @ 00000269baf2f900]     0: flags 0x1 size 3935M
[libplacebo @ 00000269baf2f900]     1: flags 0x0 size 8167M
[libplacebo @ 00000269baf2f900]     2: flags 0x1 size  214M
[libplacebo @ 00000269baf2f900] Memory summary:     0 used     0 res     0 alloc, efficiency 100.00%, utilization 100.00%, max page:  245M
[libplacebo @ 00000269baf2f900] shaderc SPIR-V version 1.6 rev 1
[libplacebo @ 00000269baf2f900] Initialized SPIR-V compiler 'shaderc'
[libplacebo @ 00000269baf2f900] GPU information:
[libplacebo @ 00000269baf2f900]     GLSL version: 450 (vulkan)
[libplacebo @ 00000269baf2f900]       max_shmem_size:            49152
[libplacebo @ 00000269baf2f900]       max_group_threads:         1024
[libplacebo @ 00000269baf2f900]       max_group_size[0]:         1024
[libplacebo @ 00000269baf2f900]       max_group_size[1]:         1024
[libplacebo @ 00000269baf2f900]       max_group_size[2]:         64
[libplacebo @ 00000269baf2f900]       subgroup_size:             32
[libplacebo @ 00000269baf2f900]       min_gather_offset:         -32
[libplacebo @ 00000269baf2f900]       max_gather_offset:         31
[libplacebo @ 00000269baf2f900]     Limits:
[libplacebo @ 00000269baf2f900]       thread_safe:               1
[libplacebo @ 00000269baf2f900]       callbacks:                 1
[libplacebo @ 00000269baf2f900]       max_buf_size:              8564391936
[libplacebo @ 00000269baf2f900]       max_ubo_size:              65536
[libplacebo @ 00000269baf2f900]       max_ssbo_size:             4294967295
[libplacebo @ 00000269baf2f900]       max_vbo_size:              4126146560
[libplacebo @ 00000269baf2f900]       max_mapped_size:           8564391936
[libplacebo @ 00000269baf2f900]       max_buffer_texels:         134217728
[libplacebo @ 00000269baf2f900]       align_host_ptr:            4096
[libplacebo @ 00000269baf2f900]       host_cached:               1
[libplacebo @ 00000269baf2f900]       max_tex_1d_dim:            32768
[libplacebo @ 00000269baf2f900]       max_tex_2d_dim:            32768
[libplacebo @ 00000269baf2f900]       max_tex_3d_dim:            16384
[libplacebo @ 00000269baf2f900]       blittable_1d_3d:           1
[libplacebo @ 00000269baf2f900]       buf_transfer:              1
[libplacebo @ 00000269baf2f900]       align_tex_xfer_pitch:      1
[libplacebo @ 00000269baf2f900]       align_tex_xfer_offset:     4
[libplacebo @ 00000269baf2f900]       max_variable_comps:        0
[libplacebo @ 00000269baf2f900]       max_constants:             18446744073709551615
[libplacebo @ 00000269baf2f900]       max_pushc_size:            256
[libplacebo @ 00000269baf2f900]       align_vertex_stride:       1
[libplacebo @ 00000269baf2f900]       max_dispatch[0]:           2147483647
[libplacebo @ 00000269baf2f900]       max_dispatch[1]:           65535
[libplacebo @ 00000269baf2f900]       max_dispatch[2]:           65535
[libplacebo @ 00000269baf2f900]       fragment_queues:           16
[libplacebo @ 00000269baf2f900]       compute_queues:            8
[libplacebo @ 00000269baf2f900]     External API interop:
[libplacebo @ 00000269baf2f900]       UUID: 13:FA:06:31:96:AA:97:58:0A:18:53:33:C1:B8:E5:BB
[libplacebo @ 00000269baf2f900]       PCI: 0000:20:00:0
[libplacebo @ 00000269baf2f900]       buf export caps: 0x16
[libplacebo @ 00000269baf2f900]       buf import caps: 0x16
[libplacebo @ 00000269baf2f900]       tex export caps: 0x16
[libplacebo @ 00000269baf2f900]       tex import caps: 0x16
[libplacebo @ 00000269baf2f900]       sync export caps: 0x6
[libplacebo @ 00000269baf2f900]       sync import caps: 0x0
[graph -1 input from stream 0:0 @ 00000269a5f1bf80] w:1920 h:1080 pixfmt:yuv420p tb:1/1000 fr:24/1 sar:1/1 csp:bt709 range:tv

Ffmpeg build that works: 2024-10-02-git-358fdf3083-full_build

clementiae avatar Nov 03 '24 15:11 clementiae

Yes, it appears broken in ffmpeg. See https://trac.ffmpeg.org/ticket/11246

GyanD avatar Nov 03 '24 15:11 GyanD

The issue has been fixed!

clementiae avatar Nov 11 '24 22:11 clementiae