[Cin] OpenCL again

Andrew Randrianasulu randrianasulu at gmail.com
Tue Feb 14 01:01:39 CET 2023


пн, 13 февр. 2023 г., 19:21 Andrea paz <gamberucci.andrea at gmail.com>:

> I tried using your command line (with one of my mp4 files) and
> everything seems to work (with another mp4 I had filters error):
>
> $ ffmpeg -init_hw_device opencl=gpu -filter_hw_device gpu -i
> ~/mixkit-worried-and-sad-woman-outdoors-8739.mp4 -vf "hwupload,
> boxblur_opencl,hwdownload,format=yuv420p" -f null /dev/null
> ffmpeg version n5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
>   built with gcc 12.2.0 (GCC)
>   configuration: --prefix=/usr --disable-debug --disable-static
> --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm
> --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls
> --enable-gpl --enable-ladspa --enable-libaom --enable-libass
> --enable-libbluray --enable-libbs2b --enable-libdav1d --enable-libdrm
> --enable-libfreetype --enable-libfribidi --enable-libgsm
> --enable-libiec61883 --enable-libjack --enable-libmfx
> --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb
> --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus
> --enable-libpulse --enable-librav1e --enable-librsvg --enable-libsoxr
> --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1
> --enable-libtheora --enable-libv4l2 --enable-libvidstab
> --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp
> --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2
> --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc
> --enable-opencl --enable-opengl --enable-shared --enable-version3
> --enable-vulkan
>   libavutil      57. 28.100 / 57. 28.100
>   libavcodec     59. 37.100 / 59. 37.100
>   libavformat    59. 27.100 / 59. 27.100
>   libavdevice    59.  7.100 / 59.  7.100
>   libavfilter     8. 44.100 /  8. 44.100
>   libswscale      6.  7.100 /  6.  7.100
>   libswresample   4.  7.100 /  4.  7.100
>   libpostproc    56.  6.100 / 56.  6.100
> [AVHWDeviceContext @ 0x55ca3888f340] QSV to OpenCL mapping not usable.
> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
> '/home/paz/mixkit-worried-and-sad-woman-outdoors-8739.mp4':
>   Metadata:
>     major_brand     : M4V
>     minor_version   : 1
>     compatible_brands: isomavc1mp42
>     creation_time   : 2020-06-21T18:53:40.000000Z
>   Duration: 00:00:15.00, start: 0.000000, bitrate: 24801 kb/s
>   Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661),
> yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 24798
> kb/s, 24 fps, 24 tbr, 24k tbn (default)
>     Metadata:
>       creation_time   : 2020-06-21T18:53:40.000000Z
>       handler_name    : ETI ISO Video Media Handler
>       vendor_id       : [0][0][0][0]
>       encoder         : Elemental H.264
> Stream mapping:
>   Stream #0:0 -> #0:0 (h264 (native) -> wrapped_avframe (native))
> Press [q] to stop, [?] for help
> Output #0, null, to '/dev/null':
>   Metadata:
>     major_brand     : M4V
>     minor_version   : 1
>     compatible_brands: isomavc1mp42
>     encoder         : Lavf59.27.100
>   Stream #0:0(und): Video: wrapped_avframe, yuv420p(tv, bt709,
> progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 24 fps,
> 24 tbn (default)
>     Metadata:
>       creation_time   : 2020-06-21T18:53:40.000000Z
>       handler_name    : ETI ISO Video Media Handler
>       vendor_id       : [0][0][0][0]
>       encoder         : Lavc59.37.100 wrapped_avframe
> frame=  360 fps=0.0 q=-0.0 Lsize=N/A time=00:00:15.00 bitrate=N/A
> speed=15.4x
> video:166kB audio:0kB subtitle:0kB other streams:0kB global
> headers:0kB muxing overhead: unknown
>
>
> Or, creating a new mkv file:
>
> $ ffmpeg -init_hw_device opencl=gpu -filter_hw_device gpu -i
> ~/mixkit-worried-and-sad-woman-outdoors-8739.mp4 -vf "hwupload,
> boxblur_opencl,hwdownload,format=yuv420p" output.mkv
> ffmpeg version n5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
>   built with gcc 12.2.0 (GCC)
>   configuration: --prefix=/usr --disable-debug --disable-static
> --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm
> --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls
> --enable-gpl --enable-ladspa --enable-libaom --enable-libass
> --enable-libbluray --enable-libbs2b --enable-libdav1d --enable-libdrm
> --enable-libfreetype --enable-libfribidi --enable-libgsm
> --enable-libiec61883 --enable-libjack --enable-libmfx
> --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb
> --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus
> --enable-libpulse --enable-librav1e --enable-librsvg --enable-libsoxr
> --enable-libspeex --enable-libsrt --enable-libssh --enable-libsvtav1
> --enable-libtheora --enable-libv4l2 --enable-libvidstab
> --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp
> --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2
> --enable-libxvid --enable-libzimg --enable-nvdec --enable-nvenc
> --enable-opencl --enable-opengl --enable-shared --enable-version3
> --enable-vulkan
>   libavutil      57. 28.100 / 57. 28.100
>   libavcodec     59. 37.100 / 59. 37.100
>   libavformat    59. 27.100 / 59. 27.100
>   libavdevice    59.  7.100 / 59.  7.100
>   libavfilter     8. 44.100 /  8. 44.100
>   libswscale      6.  7.100 /  6.  7.100
>   libswresample   4.  7.100 /  4.  7.100
>   libpostproc    56.  6.100 / 56.  6.100
> [AVHWDeviceContext @ 0x55ad13a57300] QSV to OpenCL mapping not usable.
> Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
> '/home/paz/mixkit-worried-and-sad-woman-outdoors-8739.mp4':
>   Metadata:
>     major_brand     : M4V
>     minor_version   : 1
>     compatible_brands: isomavc1mp42
>     creation_time   : 2020-06-21T18:53:40.000000Z
>   Duration: 00:00:15.00, start: 0.000000, bitrate: 24801 kb/s
>   Stream #0:0[0x1](und): Video: h264 (Main) (avc1 / 0x31637661),
> yuv420p(tv, bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], 24798
> kb/s, 24 fps, 24 tbr, 24k tbn (default)
>     Metadata:
>       creation_time   : 2020-06-21T18:53:40.000000Z
>       handler_name    : ETI ISO Video Media Handler
>       vendor_id       : [0][0][0][0]
>       encoder         : Elemental H.264
> Stream mapping:
>   Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
> Press [q] to stop, [?] for help
> [libx264 @ 0x55ad13c1a140] using SAR=1/1
> [libx264 @ 0x55ad13c1a140] using cpu capabilities: MMX2 SSE2Fast SSSE3
> SSE4.2 AVX FMA3 BMI2 AVX2
> [libx264 @ 0x55ad13c1a140] profile High, level 4.0, 4:2:0, 8-bit
> [libx264 @ 0x55ad13c1a140] 264 - core 164 r3095 baee400 - H.264/MPEG-4
> AVC codec - Copyleft 2003-2022 - http://www.videolan.org/x264.html -
> options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7
> psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1
> 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2
> threads=24 lookahead_threads=4 sliced_threads=0 nr=0 decimate=1
> interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2
> b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250
> keyint_min=24 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf
> mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40
> aq=1:1.00
> Output #0, matroska, to 'output.mkv':
>   Metadata:
>     major_brand     : M4V
>     minor_version   : 1
>     compatible_brands: isomavc1mp42
>     encoder         : Lavf59.27.100
>   Stream #0:0(und): Video: h264 (H264 / 0x34363248), yuv420p(tv,
> bt709, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 24 fps, 1k
> tbn (default)
>     Metadata:
>       creation_time   : 2020-06-21T18:53:40.000000Z
>       handler_name    : ETI ISO Video Media Handler
>       vendor_id       : [0][0][0][0]
>       encoder         : Lavc59.37.100 libx264
>     Side data:
>       cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
> frame=  360 fps= 98 q=-1.0 Lsize=    3012kB time=00:00:14.87
> bitrate=1658.5kbits/s speed=4.04x
> video:3008kB audio:0kB subtitle:0kB other streams:0kB global
> headers:0kB muxing overhead: 0.111606%
> [libx264 @ 0x55ad13c1a140] frame I:2     Avg QP:18.75  size: 32568
> [libx264 @ 0x55ad13c1a140] frame P:90    Avg QP:20.16  size: 16107
> [libx264 @ 0x55ad13c1a140] frame B:268   Avg QP:21.18  size:  5840
> [libx264 @ 0x55ad13c1a140] consecutive B-frames:  0.6%  0.6%  0.0% 98.9%
> [libx264 @ 0x55ad13c1a140] mb I  I16..4: 23.2% 72.9%  3.9%
> [libx264 @ 0x55ad13c1a140] mb P  I16..4:  8.9% 15.5%  0.1%  P16..4:
> 38.1%  4.7%  1.4%  0.0%  0.0%    skip:31.4%
> [libx264 @ 0x55ad13c1a140] mb B  I16..4:  0.7%  0.8%  0.0%  B16..8:
> 31.8%  1.6%  0.1%  direct: 1.2%  skip:63.9%  L0:46.6% L1:52.3% BI:
> 1.0%
> [libx264 @ 0x55ad13c1a140] 8x8 transform intra:62.4% inter:98.3%
> [libx264 @ 0x55ad13c1a140] coded y,uvDC,uvAC intra: 17.8% 35.6% 1.7%
> inter: 4.5% 9.6% 0.0%
> [libx264 @ 0x55ad13c1a140] i16 v,h,dc,p: 27% 27% 10% 36%
> [libx264 @ 0x55ad13c1a140] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 22% 16% 43%
> 2%  4%  5%  4%  3%  2%
> [libx264 @ 0x55ad13c1a140] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 32% 20% 16%
> 4% 11%  7%  5%  3%  1%
> [libx264 @ 0x55ad13c1a140] i8c dc,h,v,p: 65% 16% 16%  3%
> [libx264 @ 0x55ad13c1a140] Weighted P-Frames: Y:0.0% UV:0.0%
> [libx264 @ 0x55ad13c1a140] ref P L0: 68.4%  4.6% 19.6%  7.4%
> [libx264 @ 0x55ad13c1a140] ref B L0: 88.4%  9.5%  2.1%
> [libx264 @ 0x55ad13c1a140] ref B L1: 95.1%  4.9%
> [libx264 @ 0x55ad13c1a140] kb/s:1642.56
>
>
> The resulting video shows the blur, so it is fine.
>


Ah, cool! Can you post clinfo output too?

http://underpop.online.fr/f/ffmpeg/help/tonemap_005fopencl.htm.gz

I tried to get more complex tonemapping example but it was erroring out due
to syntax errors :(

If you get this one to work it will be awesome! And double-awesome if you
can put such long hw filter string in opts file for cinelerra-gg to pick.
It might error out due to missing filtering device init but I hope this can
be relatively easily fixed by even me.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cinelerra-gg.org/pipermail/cin/attachments/20230214/e1c5e667/attachment-0001.htm>


More information about the Cin mailing list