Hello All!
My setup is an Mac running Sonoma 14.7, intel based with an AMD GPU card (AMD
Radeon R9 M295X 4 GB).
I want to display on my screen the content of a USB video capure card using
the hardware capabilities of the GPU. It's my one of using my Mac screen as a
second screen for my windows laptop. It worked great when I had linux on the
Mac. [ffplay -f video4linux2 -framerate 50 -loglevel -8 -video_size 1920x1080
-x 3840 -y 2160 /dev/video0]
I switched back to MacOS. I got it to work compiling the most recent version
of ffmpeg but it gobles up CPU (like 20%) instead of the 5% on linux.
ffplay -f avfoundation -framerate 50 -loglevel -8 -video_size 1920x1080 -x 3840
-y 2160 -i "0" &
If I attempt to use hardware acceleration then I get getting error
[pl_map_avframe_ex failed] with a blank screen.
Can anybody help me?
ffplay -hwaccel vulkan -f avfoundation -framerate 50 -video_size 1920x1080 -x
3840 -y 2160 -i "0" &
[1] 67503
xxx@Thierrys-iMac ~ % ffplay version N-120843-g10a061ba99 Copyright (c)
2003-2025 the FFmpeg developers
built with Apple clang version 16.0.0 (clang-1600.0.26.6)
configuration: --enable-gpl --enable-version3 --enable-nonfree
--enable-libplacebo --enable-vulkan --enable-libx264 --enable-libx265
--enable-libmp3lame --enable-shared --disable-stripping
--pkg-config-flags=--static
libavutil 60. 10.100 / 60. 10.100
libavcodec 62. 13.101 / 62. 13.101
libavformat 62. 4.101 / 62. 4.101
libavdevice 62. 2.100 / 62. 2.100
libavfilter 11. 5.100 / 11. 5.100
libswscale 9. 2.100 / 9. 2.100
libswresample 6. 2.100 / 6. 2.100
Enable vulkan renderer to support hwaccel vulkan
[Vulkan Renderer @ 0x7f9c5e007140] Initialized libplacebo v7.351.0 (API v351)
[Vulkan @ 0x7f9c5e014a40] device extension "VK_KHR_external_memory_fd" not
found, excluding.
[Vulkan @ 0x7f9c5e014a40] device extension "VK_EXT_external_memory_dma_buf" not
found, excluding.
[Vulkan @ 0x7f9c5e014a40] device extension "VK_KHR_external_semaphore_fd" not
found, excluding.
[Vulkan @ 0x7f9c5e014a40] device extension "VK_EXT_pci_bus_info" not found,
excluding.
[Vulkan @ 0x7f9c5e014a40] device extension "VK_EXT_image_drm_format_modifier"
not found, excluding.
[Vulkan Renderer @ 0x7f9c5e007140] Imported vulkan device properties:
[Vulkan Renderer @ 0x7f9c5e007140] Device Name: AMD Radeon R9 M295X
[Vulkan Renderer @ 0x7f9c5e007140] Device ID: 1002:6938
[Vulkan Renderer @ 0x7f9c5e007140] Device UUID:
00:00:10:02:00:00:69:38:00:00:00:00:00:00:04:41
[Vulkan Renderer @ 0x7f9c5e007140] Driver version: 283c
[Vulkan Renderer @ 0x7f9c5e007140] API version: 1.3.0
[Vulkan Renderer @ 0x7f9c5e007140] Memory heaps supported by device:
[Vulkan Renderer @ 0x7f9c5e007140] 0: flags 0x1 size 4096M
[Vulkan Renderer @ 0x7f9c5e007140] 1: flags 0x0 size 32G
[Vulkan Renderer @ 0x7f9c5e007140] Memory summary: 0 used 0 res 0
alloc, efficiency 100.00%, utilization 100.00%, max page: 256M
[Vulkan Renderer @ 0x7f9c5e007140] shaderc SPIR-V version 1.6 rev 1
[Vulkan Renderer @ 0x7f9c5e007140] Initialized SPIR-V compiler 'shaderc'
[Vulkan Renderer @ 0x7f9c5e007140] GPU information:
[Vulkan Renderer @ 0x7f9c5e007140] GLSL version: 450 (vulkan)
[Vulkan Renderer @ 0x7f9c5e007140] max_shmem_size: 65536
[Vulkan Renderer @ 0x7f9c5e007140] max_group_threads: 1024
[Vulkan Renderer @ 0x7f9c5e007140] max_group_size[0]: 1024
[Vulkan Renderer @ 0x7f9c5e007140] max_group_size[1]: 1024
[Vulkan Renderer @ 0x7f9c5e007140] max_group_size[2]: 1024
[Vulkan Renderer @ 0x7f9c5e007140] subgroup_size: 64
[Vulkan Renderer @ 0x7f9c5e007140] min_gather_offset: -8
[Vulkan Renderer @ 0x7f9c5e007140] max_gather_offset: 7
[Vulkan Renderer @ 0x7f9c5e007140] Limits:
[Vulkan Renderer @ 0x7f9c5e007140] thread_safe: 1
[Vulkan Renderer @ 0x7f9c5e007140] callbacks: 1
[Vulkan Renderer @ 0x7f9c5e007140] max_buf_size: 34359738368
[Vulkan Renderer @ 0x7f9c5e007140] max_ubo_size: 65536
[Vulkan Renderer @ 0x7f9c5e007140] max_ssbo_size: 3221225472
[Vulkan Renderer @ 0x7f9c5e007140] max_vbo_size: 4294967296
[Vulkan Renderer @ 0x7f9c5e007140] max_mapped_size: 34359738368
[Vulkan Renderer @ 0x7f9c5e007140] max_buffer_texels: 67108864
[Vulkan Renderer @ 0x7f9c5e007140] align_host_ptr: 4096
[Vulkan Renderer @ 0x7f9c5e007140] host_cached: 1
[Vulkan Renderer @ 0x7f9c5e007140] max_tex_1d_dim: 16384
[Vulkan Renderer @ 0x7f9c5e007140] max_tex_2d_dim: 16384
[Vulkan Renderer @ 0x7f9c5e007140] max_tex_3d_dim: 2048
[Vulkan Renderer @ 0x7f9c5e007140] blittable_1d_3d: 1
[Vulkan Renderer @ 0x7f9c5e007140] buf_transfer: 1
[Vulkan Renderer @ 0x7f9c5e007140] align_tex_xfer_pitch: 1
[Vulkan Renderer @ 0x7f9c5e007140] align_tex_xfer_offset: 256
[Vulkan Renderer @ 0x7f9c5e007140] max_variable_comps: 0
[Vulkan Renderer @ 0x7f9c5e007140] max_constants:
18446744073709551615
[Vulkan Renderer @ 0x7f9c5e007140] max_pushc_size: 4096
[Vulkan Renderer @ 0x7f9c5e007140] align_vertex_stride: 1
[Vulkan Renderer @ 0x7f9c5e007140] max_dispatch[0]: 1073741824
[Vulkan Renderer @ 0x7f9c5e007140] max_dispatch[1]: 1073741824
[Vulkan Renderer @ 0x7f9c5e007140] max_dispatch[2]: 1073741824
[Vulkan Renderer @ 0x7f9c5e007140] fragment_queues: 1
[Vulkan Renderer @ 0x7f9c5e007140] compute_queues: 1
[Vulkan Renderer @ 0x7f9c5e007140] External API interop:
[Vulkan Renderer @ 0x7f9c5e007140] UUID:
00:00:10:02:00:00:69:38:00:00:00:00:00:00:04:41
[Vulkan Renderer @ 0x7f9c5e007140] PCI: 0000:00:00:0
[Vulkan Renderer @ 0x7f9c5e007140] buf export caps: 0x0
[Vulkan Renderer @ 0x7f9c5e007140] buf import caps: 0x10
[Vulkan Renderer @ 0x7f9c5e007140] tex export caps: 0x0
[Vulkan Renderer @ 0x7f9c5e007140] tex import caps: 0x70
[Vulkan Renderer @ 0x7f9c5e007140] sync export caps: 0x0
[Vulkan Renderer @ 0x7f9c5e007140] sync import caps: 0x0
[Vulkan Renderer @ 0x7f9c5e007140] Available surface configurations:
[Vulkan Renderer @ 0x7f9c5e007140] 0: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR
[Vulkan Renderer @ 0x7f9c5e007140] 1: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR
[Vulkan Renderer @ 0x7f9c5e007140] 2: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR
[Vulkan Renderer @ 0x7f9c5e007140] 3: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR
[Vulkan Renderer @ 0x7f9c5e007140] 4: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR
[Vulkan Renderer @ 0x7f9c5e007140] 5: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 6: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 7: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 8: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 9: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 10: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 11: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 12: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 13: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 14: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 15: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_BT709_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 16: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_BT709_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 17: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_BT709_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 18: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_BT709_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 19: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_BT709_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 20: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 21: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 22: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 23: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 24: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 25: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_PASS_THROUGH_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 26: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_PASS_THROUGH_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 27: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_PASS_THROUGH_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 28: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_PASS_THROUGH_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 29: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_PASS_THROUGH_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 30: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 31: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 32: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 33: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 34: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 35: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 36: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 37: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 38: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 39: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 40: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 41: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 42: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 43: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 44: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 45: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_BT2020_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 46: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_BT2020_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 47: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_BT2020_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 48: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_BT2020_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 49: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_BT2020_LINEAR_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 50: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_HDR10_HLG_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 51: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_HDR10_HLG_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 52: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_HDR10_HLG_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 53: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_HDR10_HLG_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 54: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_HDR10_HLG_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 55: VK_FORMAT_B8G8R8A8_UNORM
VK_COLOR_SPACE_HDR10_ST2084_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 56: VK_FORMAT_B8G8R8A8_SRGB
VK_COLOR_SPACE_HDR10_ST2084_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 57: VK_FORMAT_R16G16B16A16_SFLOAT
VK_COLOR_SPACE_HDR10_ST2084_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 58: VK_FORMAT_A2B10G10R10_UNORM_PACK32
VK_COLOR_SPACE_HDR10_ST2084_EXT
[Vulkan Renderer @ 0x7f9c5e007140] 59: VK_FORMAT_A2R10G10B10_UNORM_PACK32
VK_COLOR_SPACE_HDR10_ST2084_EXT
[Vulkan Renderer @ 0x7f9c5e007140] Picked surface configuration 28:
VK_FORMAT_A2B10G10R10_UNORM_PACK32 + VK_COLOR_SPACE_PASS_THROUGH_EXT
2025-09-03 10:25:07.399 ffplay[67503:1609944] WARNING: Add
NSCameraUseContinuityCameraDeviceType to your Info.plist to use
AVCaptureDeviceTypeContinuityCamera.
[avfoundation @ 0x7f9c5e01b8c0] Selected pixel format (yuv420p) is not
supported by the input device.
[avfoundation @ 0x7f9c5e01b8c0] Supported pixel formats:
[avfoundation @ 0x7f9c5e01b8c0] uyvy422
[avfoundation @ 0x7f9c5e01b8c0] yuyv422
[avfoundation @ 0x7f9c5e01b8c0] nv12
[avfoundation @ 0x7f9c5e01b8c0] 0rgb
[avfoundation @ 0x7f9c5e01b8c0] bgr0
[avfoundation @ 0x7f9c5e01b8c0] Overriding selected pixel format to use uyvy422
instead.
[avfoundation @ 0x7f9c5e01b8c0] Stream #0: not enough frames to estimate rate;
consider increasing probesize
Input #0, avfoundation, from '0':
Duration: N/A, start: 197290.152367, bitrate: N/A
Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 1920x1080, 1000k
tbr, 1000k tbn, start 197290.152367
pl_map_avframe_ex failed
_______________________________________________
ffmpeg-user mailing list -- [email protected]
To unsubscribe send an email to [email protected]