On Mon, Dec 1, 2025 at 1:07 PM Andrew Randrianasulu
<[email protected]> wrote:
>
> Test file (1.7 Gb, 30 seconds 4k, 60 fps, bt709):
>
>
> https://web.archive.org/web/20250727093440/https://terra-1-g.djicdn.com/851d20f7b9f64838a34cd02351370894/630sample/Nature072-A006C0035_230328_4U1Q.mov
>
>
> ffmpeg git commit
>
>
> commit 7043522fe07b4678de59e01f987de8f2f46d40a2
>
> configure line:
>
> guest@slax:/dev/shm/ffmpeg$ ./ffmpeg
> ffmpeg version N-120778-g7043522fe0 Copyright (c) 2000-2025 the FFmpeg
> developers
> built with gcc 11.2.0 (GCC)
> configuration: --enable-opencl --disable-debug --enable-libx265
> --enable-libx264 --enable-gpl --enable-libplacebo --enable-vulkan
> --enable-libshaderc --enable-libzimg --enable-libaom --enable-libdav1d
> --enable-libsoxr --enable-libfontconfig --enable-libfreetype
> --enable-libfribidi --enable-gnutls --enable-libass --enable-libbluray
> --enable-libcdio --enable-frei0r --enable-libgsm --enable-openal
> --enable-libopus --enable-librtmp --enable-libsnappy --enable-libspeex
> --enable-libssh --enable-libtheora --enable-libtwolame --enable-libv4l2
> --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp
> libavutil 60. 19.101 / 60. 19.101
> libavcodec 62. 21.100 / 62. 21.100
> libavformat 62. 6.103 / 62. 6.103
> libavdevice 62. 2.100 / 62. 2.100
> libavfilter 11. 10.101 / 11. 10.101
> libswscale 9. 3.100 / 9. 3.100
> libswresample 6. 2.100 / 6. 2.100
> Universal media converter
> usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options]
> outfile}...
>
> Use -h to get full help or, even better, run 'man ffmpeg'
>
> ====
>
> So, it works with ./ffplay -hwaccel vulkan file
>
> and it also works (at 30 fps)
>
> ./ffmpeg -hwaccel vulkan -i file -f null /dev/null
>
> without -hwaccel it decodes at 10-12 fps (32-bit AMD FX 4300) and full cpu
> load. (there is much smaller cpu load for Vulcan decoding case).
>
> full page with bigger samples:
>
> https://web.archive.org/web/20250920123334/https://www.dji.com/inspire-3/samples
>
> found via Kodi user forum. May not work in Russia without using archive.org
> (I tried and it errored for me first).
Hm, tried transcoding vulkan->vulkan (prores- > ffv1) and at first it failed:
bash-5.1$ ./ffmpeg -init_hw_device vulkan=vulkan -hwaccel vulkan
-filter_hw_device vulkan -i
/dev/shm/Nature072-A006C0035_230328_4U1Q.mov -c:v ffv1_vulkan -f
matroska /dev/null -noautoscale
ffmpeg version N-120778-g7043522fe0 Copyright (c) 2000-2025 the FFmpeg
developers
built with gcc 11.2.0 (GCC)
configuration: --enable-opencl --disable-debug --enable-libx265
--enable-libx264 --enable-gpl --enable-libplacebo --enable-vulkan
--enable-libshaderc --enable-libzimg --enable-libaom --enable-libdav1d
--enable-libsoxr --enable-libfontconfig --enable-libfreetype
--enable-libfribidi --enable-gnutls --enable-libass --enable-libbluray
--enable-libcdio --enable-frei0r --enable-libgsm --enable-openal
--enable-libopus --enable-librtmp --enable-libsnappy --enable-libspeex
--enable-libssh --enable-libtheora --enable-libtwolame
--enable-libv4l2 --enable-libvidstab --enable-libvorbis
--enable-libvpx --enable-libwebp
libavutil 60. 19.101 / 60. 19.101
libavcodec 62. 21.100 / 62. 21.100
libavformat 62. 6.103 / 62. 6.103
libavdevice 62. 2.100 / 62. 2.100
libavfilter 11. 10.101 / 11. 10.101
libswscale 9. 3.100 / 9. 3.100
libswresample 6. 2.100 / 6. 2.100
Trailing option(s) found in the command: may be ignored.
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'/dev/shm/Nature072-A006C0035_230328_4U1Q.mov':
Metadata:
major_brand : qt
minor_version : 512
compatible_brands: qt
creation_time : 2023-04-07T18:41:32.000000Z
encoder : Blackmagic Design DaVinci Resolve Studio
Duration: 00:00:08.00, start: 0.000000, bitrate: 1787424 kb/s
Stream #0:0[0x1]: Video: prores (HQ) (apch / 0x68637061),
yuv422p10le(tv, bt709, progressive), 3840x2160, 1787418 kb/s, SAR 1:1
DAR 16:9, 60 fps, 60 tbr, 15360 tbn (default)
Metadata:
creation_time : 2023-04-07T18:41:32.000000Z
handler_name : VideoHandler
vendor_id : appl
encoder : Apple ProRes 422 HQ
timecode : 21:22:52:12
Stream #0:1[0x2](eng): Data: none (tmcd / 0x64636D74), 0 kb/s
Metadata:
creation_time : 2023-04-07T18:41:32.000000Z
handler_name : TimeCodeHandler
timecode : 21:22:52:12
File '/dev/null' already exists. Overwrite? [y/N] y
Stream mapping:
Stream #0:0 -> #0:0 (prores (native) -> ffv1 (ffv1_vulkan))
Press [q] to stop, [?] for help
Impossible to convert between the formats supported by the filter
'Parsed_null_0' and the filter 'auto_scale_0'
Link 'Parsed_null_0.default' -> 'auto_scale_0.default':
Pixel formats:
src: yuv422p10le
dst: yuv422p10le
Link 'auto_scale_0.default' -> 'format.default':
Pixel formats:
src: yuv420p yuyv422 rgb24 bgr24 yuv422p yuv444p yuv410p yuv411p
gray monow monob pal8 yuvj420p yuvj422p yuvj444p uyvy422 bgr8 bgr4
bgr4_byte rgb8 rgb4 rgb4_byte nv12 nv21 argb rgba abgr bgra gray16be
gray16le yuv440p yuvj440p yuva420p rgb48be rgb48le rgb565be rgb565le
rgb555be rgb555le bgr565be bgr565le bgr555be bgr555le yuv420p16le
yuv420p16be yuv422p16le yuv422p16be yuv444p16le yuv444p16be rgb444le
rgb444be bgr444le bgr444be ya8 bgr48be bgr48le yuv420p9be yuv420p9le
yuv420p10be yuv420p10le yuv422p10be yuv422p10le yuv444p9be yuv444p9le
yuv444p10be yuv444p10le yuv422p9be yuv422p9le gbrp gbrp9be gbrp9le
gbrp10be gbrp10le gbrp16be gbrp16le yuva422p yuva444p yuva420p9be
yuva420p9le yuva422p9be yuva422p9le yuva444p9be yuva444p9le
yuva420p10be yuva420p10le yuva422p10be yuva422p10le yuva444p10be
yuva444p10le yuva420p16be yuva420p16le yuva422p16be yuva422p16le
yuva444p16be yuva444p16le xyz12le xyz12be nv16 nv20le nv20be rgba64be
rgba64le bgra64be bgra64le yvyu422 ya16be ya16le gbrap gbrap16be
gbrap16le 0rgb rgb0 0bgr bgr0 yuv420p12be yuv420p12le yuv420p14be
yuv420p14le yuv422p12be yuv422p12le yuv422p14be yuv422p14le
yuv444p12be yuv444p12le yuv444p14be yuv444p14le gbrp12be gbrp12le
gbrp14be gbrp14le yuvj411p yuv440p10le yuv440p10be yuv440p12le
yuv440p12be ayuv64le ayuv64be p010le p010be gbrap12be gbrap12le
gbrap10be gbrap10le gray12be gray12le gray10be gray10le p016le p016be
gray9be gray9le gbrpf32be gbrpf32le gbrapf32be gbrapf32le gray14be
gray14le grayf32be grayf32le yuva422p12be yuva422p12le yuva444p12be
yuva444p12le nv24 nv42 y210le x2rgb10le x2bgr10le p210be p210le p410be
p410le p216be p216le p416be p416le vuya vuyx p012le p012be y212le
xv30le xv36be xv36le p212be p212le p412be p412le gbrap14be gbrap14le
ayuv uyva vyu444 v30xle y216le xv48be xv48le yuv444p10msbbe
yuv444p10msble yuv444p12msbbe yuv444p12msble gbrp10msbbe gbrp10msble
gbrp12msbbe gbrp12msble
dst: vulkan
[vf#0:0 @ 0xb882900] Error reinitializing filters!
[vf#0:0 @ 0xb882900] Task finished with error code: -38 (Function not
implemented)
[vf#0:0 @ 0xb882900] Terminating thread with return code -38 (Function
not implemented)
[vost#0:0/ffv1_vulkan @ 0xb881a80] [enc:ffv1_vulkan @ 0xb881e00] Could
not open encoder before EOF
[vost#0:0/ffv1_vulkan @ 0xb881a80] Task finished with error code: -22
(Invalid argument)
[vost#0:0/ffv1_vulkan @ 0xb881a80] Terminating thread with return code
-22 (Invalid argument)
[out#0/matroska @ 0xb87fb40] Nothing was written into output file,
because at least one of its streams received no packets.
frame= 0 fps=0.0 q=0.0 Lsize= 0KiB time=N/A bitrate=N/A
speed=N/A elapsed=0:00:00.77
Conversion failed!
But with libplacebo in-between it worked, at 1.6 fps :
./ffmpeg -init_hw_device vulkan=vulkan -hwaccel vulkan
-filter_hw_device vulkan -i
/dev/shm/Nature072-A006C0035_230328_4U1Q.mov -vf libplacebo -c:v
ffv1_vulkan -f matroska 4k.mkv
ffmpeg version N-120778-g7043522fe0 Copyright (c) 2000-2025 the FFmpeg
developers
built with gcc 11.2.0 (GCC)
configuration: --enable-opencl --disable-debug --enable-libx265
--enable-libx264 --enable-gpl --enable-libplacebo --enable-vulkan
--enable-libshaderc --enable-libzimg --enable-libaom --enable-libdav1d
--enable-libsoxr --enable-libfontconfig --enable-libfreetype
--enable-libfribidi --enable-gnutls --enable-libass --enable-libbluray
--enable-libcdio --enable-frei0r --enable-libgsm --enable-openal
--enable-libopus --enable-librtmp --enable-libsnappy --enable-libspeex
--enable-libssh --enable-libtheora --enable-libtwolame
--enable-libv4l2 --enable-libvidstab --enable-libvorbis
--enable-libvpx --enable-libwebp
libavutil 60. 19.101 / 60. 19.101
libavcodec 62. 21.100 / 62. 21.100
libavformat 62. 6.103 / 62. 6.103
libavdevice 62. 2.100 / 62. 2.100
libavfilter 11. 10.101 / 11. 10.101
libswscale 9. 3.100 / 9. 3.100
libswresample 6. 2.100 / 6. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'/dev/shm/Nature072-A006C0035_230328_4U1Q.mov':
Metadata:
major_brand : qt
minor_version : 512
compatible_brands: qt
creation_time : 2023-04-07T18:41:32.000000Z
encoder : Blackmagic Design DaVinci Resolve Studio
Duration: 00:00:08.00, start: 0.000000, bitrate: 1787424 kb/s
Stream #0:0[0x1]: Video: prores (HQ) (apch / 0x68637061),
yuv422p10le(tv, bt709, progressive), 3840x2160, 1787418 kb/s, SAR 1:1
DAR 16:9, 60 fps, 60 tbr, 15360 tbn (default)
Metadata:
creation_time : 2023-04-07T18:41:32.000000Z
handler_name : VideoHandler
vendor_id : appl
encoder : Apple ProRes 422 HQ
timecode : 21:22:52:12
Stream #0:1[0x2](eng): Data: none (tmcd / 0x64636D74), 0 kb/s
Metadata:
creation_time : 2023-04-07T18:41:32.000000Z
handler_name : TimeCodeHandler
timecode : 21:22:52:12
Stream mapping:
Stream #0:0 -> #0:0 (prores (native) -> ffv1 (ffv1_vulkan))
Press [q] to stop, [?] for help
[ffv1_vulkan @ 0xb120780] Encoding buffer (424387584) larger than VRAM
(268435456), using host memory (slower)
[ffv1_vulkan @ 0xb120780] Async buffers: 404MiB per context, 404MiB
total, depth: 1
Output #0, matroska, to '4k.mkv':
Metadata:
major_brand : qt
minor_version : 512
compatible_brands: qt
encoder : Lavf62.6.103
Stream #0:0: Video: ffv1 (FFV1 / 0x31564646), vulkan(tv, bt709,
progressive), 3840x2160 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 60 fps,
1k tbn (default)
Metadata:
encoder : Lavc62.21.100 ffv1_vulkan
creation_time : 2023-04-07T18:41:32.000000Z
handler_name : VideoHandler
vendor_id : appl
timecode : 21:22:52:12
[out#0/matroska @ 0xb118540] video:4200488KiB audio:0KiB subtitle:0KiB
other streams:0KiB global headers:0KiB muxing overhead: 0.000545%
frame= 480 fps=1.6 q=-0.0 Lsize= 4200511KiB time=00:00:08.00
bitrate=4301323.1kbits/s speed=0.0273x elapsed=0:04:53.30
bash-5.1$ mediainfo 4k.mkv
General
Unique ID :
330629664121658750354019559053663697333
(0xF8BCF5021C637B621ACD645438CC79B5)
Complete name : 4k.mkv
Format : Matroska
Format version : Version 4
File size : 4.01 GiB
Duration : 8 s 0 ms
Overall bit rate mode : Variable
Overall bit rate : 4 301 Mb/s
Frame rate : 60.000 FPS
Writing application : Lavf62.6.103
Writing library : Lavf62.6.103
ErrorDetectionType : Per level 1
Video
ID : 1
Format : FFV1
Format version : Version 3.4
Format settings, GOP : N=1
Format settings, Slice count : 1 024 slices per frame
Codec ID : V_FFV1
Duration : 8 s 0 ms
Bit rate mode : Variable
Bit rate : 4 216 Mb/s
Width : 3 840 pixels
Height : 2 160 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 60.000 FPS
Color space : YUV
Chroma subsampling : 4:2:2
Bit depth : 10 bits
Scan type : Progressive
Compression mode : Lossless
Bits/(Pixel*Frame) : 8.471
Time code of first frame : 21:22:52:12
Time code source : Matroska tags
Stream size : 3.93 GiB (98%)
Writing library : Lavc62.21.100 ffv1_vulkan
Default : Yes
Forced : No
Color range : Limited
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709
VENDOR_ID : appl
coder_type : Range Coder
ErrorDetectionType : Per slice
So I think it worked (mpv plays resulted file ok, even if slowly)
But interesting question why conversion failed without libplacebo ?
_______________________________________________
ffmpeg-user mailing list -- [email protected]
To unsubscribe send an email to [email protected]