softworkz 5066 Posted August 29, 2024 Posted August 29, 2024 49 minutes ago, danergo said: So now, I can do the build on this architecture and see the results myself. But in case this can really do the proper transcoding (and rescaling) please describe what is exactly needed on Debian to replace stock ffmpeg with my own version? When you have this working, we can talk about it. We would integrate the changes in our ffmpeg. But it's pointless to spend a single thought on it before you have it working in a way that it really provides any benefit (performance-wise).
janmemby 7 Posted September 1, 2024 Posted September 1, 2024 (edited) @Luke @softworkz any update on this feature? there are couple of solutions (e.g. frigate, jellyfin, redroid) that shows hw acceleration works on rk3588. how can we support to bring this topic forward? thanks, jan Edited September 1, 2024 by janmemby
softworkz 5066 Posted September 1, 2024 Posted September 1, 2024 On 5/28/2024 at 1:10 AM, chj915 said: The Jellyfin 10.9 has included a HWA support for Rockchip devices. I have verified the setup on my Khadas Edge 2 device, it can perform hardware transcoding for HEVC (H.265) videos (CPU usage is low ). Can you show an ffmpeg log where it's transcoding a 4k HEVC video to H264 1080 with subtitles overlay?
softworkz 5066 Posted September 1, 2024 Posted September 1, 2024 You could also try to install Android OS and Emby Server Android. I'm not sure though, whether their Android image has rivers for video hwa.
janmemby 7 Posted September 2, 2024 Posted September 2, 2024 (edited) 6 hours ago, softworkz said: You could also try to install Android OS and Emby Server Android. I'm not sure though, whether their Android image has rivers for video hwa. that was a good hint, meanwhile i did some interesting workaround that just proves again that hw transcoding is feasible on rk3588. i installed docker container redroid that basically runs android with gpu acceleration on my ubuntu. than installed emby server on this android and enabled hw transcoding. and voila, it is working, see few screenshots and transcoding log. of course, it is not preferred way to run, but at least to get an inspiration ffmpeg-transcode-faa8bdd9-17ae-47df-a25e-430a0e3dd6b5_1.txt Edited September 2, 2024 by janmemby
softworkz 5066 Posted September 2, 2024 Posted September 2, 2024 Thanks for the log. It confirms that it can work and that there is a driver for video hwa. But the source video is 492x250. A 4k video has 8 times the horizontal and 8 times the vertical resolution. This means that the amount of data to process is 64 times more than in this example. The transcoding speed is around 25 fps (same like the video), so that's already the absolute minimum in order to do live transcoding. You'll have to try with Android installed on the device directly, but I doubt it will be so much better that it can handle 4k transcoding.
danergo 37 Posted September 4, 2024 Author Posted September 4, 2024 @softworkz: yesterday I have finally had some time with this. Basically what I had to do is simply clone this repo: https://github.com/nyanmisaka/ffmpeg-rockchip And according to its wiki, I needed to build 2 libraries first: rkmpp and rkrga. Then I built ffmpeg with the required flags shown in this repo's wiki. I have tried a full hw transcoding pipeline: 4K (24fps) to 1080p. RK3568 did a pretty decent 1.8x transcoding speed (avg at the end). So now I tthink we can have that conversation, as it seem it worth (at least for me) integrating this to Emby. Cheers
softworkz 5066 Posted September 4, 2024 Posted September 4, 2024 BTW, I know this repo. It's still being declared as experimental and there are lots of issues reported.
softworkz 5066 Posted September 4, 2024 Posted September 4, 2024 (edited) Can you try to transcode Samsong Wonderland TWO 4k demo? (from https://4kmedia.org/) And also watch CPU usage please. Edited September 4, 2024 by softworkz
danergo 37 Posted September 4, 2024 Author Posted September 4, 2024 25 minutes ago, softworkz said: Can you try to transcode Samsong Wonderland TWO 4k demo? (from https://4kmedia.org/) And also watch CPU usage please. Hi! Are you referring to "Samsung Wonderland TWO HDR" (https://drive.google.com/uc?export=download&id=1yr8sc5SluFIxI3mrlghT47IyMOUBFOAf)? Please let me know, and I will provide the logs in the next couple of days (hopefully tomorrow I will have some time). Thank you!
softworkz 5066 Posted September 4, 2024 Posted September 4, 2024 1 hour ago, danergo said: Are you referring to "Samsung Wonderland TWO HDR" Yes
danergo 37 Posted September 5, 2024 Author Posted September 5, 2024 Here you go: (I renamed the testfile to s.mp4) Quote sudo ffmpeg -hwaccel rkmpp -hwaccel_output_format drm_prime -afbc rga -i s.mp4 -c:a copy -strict -2 -vf scale_rkrga=w=1920:h=1080:format=nv12:afbc=1 -c:v h264_rkmpp -rc_mode VBR -b:v 6M -maxrate 6M -bufsize 12M -profile:v high -g :v 120 -y test.mp4 ffmpeg version 8164ff7 Copyright (c) 2000-2023 the FFmpeg developers built with gcc 10 (Debian 10.2.1-6) configuration: --prefix=/usr --enable-gpl --enable-version3 --enable-libdrm --enable-rkmpp --enable-rkrga libavutil 58. 29.100 / 58. 29.100 libavcodec 60. 31.102 / 60. 31.102 libavformat 60. 16.100 / 60. 16.100 libavdevice 60. 3.100 / 60. 3.100 libavfilter 9. 12.100 / 9. 12.100 libswscale 7. 5.100 / 7. 5.100 libswresample 4. 12.100 / 4. 12.100 libpostproc 57. 3.100 / 57. 3.100 [mpegts @ 0x556cdde010] start time for stream 1 is not set in estimate_timings_from_pts [mpegts @ 0x556cdde010] stream 1 : no TS found at start of file, duration not set [mpegts @ 0x556cdde010] Could not find codec parameters for stream 1 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels): unspecifi ed sample format Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options Input #0, mpegts, from 's.mp4': Duration: 00:02:09.71, start: 1.166822, bitrate: 51871 kb/s Program 1 Stream #0:0[0x101]: Video: hevc (Main 10) ([36][0][0][0] / 0x0024), yuv420p10le(tv, bt2020nc/bt2020/smpte2084), 3840x2160 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 90k tbn Stream #0:1[0x102](und): Audio: aac ([15][0][0][0] / 0x000F), 0 channels rga_api version 1.10.0_[8] Stream mapping: Stream #0:0 -> #0:0 (hevc (hevc_rkmpp) -> h264 (h264_rkmpp)) Press [q] to stop, [?] for help [Parsed_scale_rkrga_0 @ 0x556ce14480] Output format 'nv12' with AFBC modifier is not supported by RGA2 Output #0, mp4, to 'test.mp4': Metadata: encoder : Lavf60.16.100 Stream #0:0: Video: h264 (High) (avc1 / 0x31637661), drm_prime(tv, bt2020nc/bt2020/smpte2084, progressive), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 6000 kb/s, 23.98 fps, 24k tbn Metadata: encoder : Lavc60.31.102 h264_rkmpp [out#0/mp4 @ 0x556cde4bc0] video:88997kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.016316% frame= 3110 fps= 46 q=-0.0 Lsize= 89011kB time=00:02:09.67 bitrate=5623.3kbits/s speed=1.92x As you can see, overall average speed is pretty impressive. Average CPU usage (by htop) is around 20-25%. What shall be the next step?
softworkz 5066 Posted September 5, 2024 Posted September 5, 2024 1 hour ago, danergo said: What shall be the next step? Transcoding the file I mentioned above. Also please add -loglevel v and post the full log from start to end. Thanks.
danergo 37 Posted September 6, 2024 Author Posted September 6, 2024 Alright, please see it below (I had to use -loglevel verbose): (s.mp4 is the original Samsung testfile you've asked) Quote ffmpeg -loglevel verbose -hwaccel rkmpp -hwaccel_output_format drm_prime -afbc rga -i s.mp4 -c: a copy -strict -2 -vf scale_rkrga=w=1920:h=1080:format=nv12:afbc=1 -c:v h264_rkmpp -rc_mode VBR -b:v 6M -maxrate 6M -bufsize 12M -profile:v high -g:v 120 -y test.mp4 ffmpeg version 8164ff7 Copyright (c) 2000-2023 the FFmpeg developers built with gcc 10 (Debian 10.2.1-6) configuration: --prefix=/usr --enable-gpl --enable-version3 --enable-libdrm --enable-rkmpp --enable-rkrga libavutil 58. 29.100 / 58. 29.100 libavcodec 60. 31.102 / 60. 31.102 libavformat 60. 16.100 / 60. 16.100 libavdevice 60. 3.100 / 60. 3.100 libavfilter 9. 12.100 / 9. 12.100 libswscale 7. 5.100 / 7. 5.100 libswresample 4. 12.100 / 4. 12.100 libpostproc 57. 3.100 / 57. 3.100 Routing option strict to both codec and muxer layer [mpegts @ 0x558f266030] start time for stream 1 is not set in estimate_timings_from_pts [mpegts @ 0x558f266030] stream 1 : no TS found at start of file, duration not set [mpegts @ 0x558f266030] Could not find codec parameters for stream 1 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels): unspecifi ed sample format Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options Selecting decoder 'hevc_rkmpp' because of requested hwaccel method rkmpp Input #0, mpegts, from 's.mp4': Duration: 00:02:09.71, start: 1.166822, bitrate: 51871 kb/s Program 1 Stream #0:0[0x101]: Video: hevc (Main 10), 1 reference frame ([36][0][0][0] / 0x0024), yuv420p10le(tv, bt2020nc/bt2020/smpte208 4, left), 3840x2160 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 90k tbn Stream #0:1[0x102](und): Audio: aac ([15][0][0][0] / 0x000F), 0 channels [out#0/mp4 @ 0x558f26cbe0] No explicit maps, mapping streams automatically... [vost#0:0/h264_rkmpp @ 0x558f3427c0] Created video stream from input stream 0:0 [hevc_mp4toannexb @ 0x558f2ada90] The input looks like it is Annex B already rga_api version 1.10.0_[8] [hevc_rkmpp @ 0x558f2ae520] AFBC is requested without capable RGA, ignoring [hevc_rkmpp @ 0x558f2ae520] Picked up an existing RKMPP hardware device Stream mapping: Stream #0:0 -> #0:0 (hevc (hevc_rkmpp) -> h264 (h264_rkmpp)) Press [q] to stop, [?] for help [hevc_rkmpp @ 0x558f2ae520] Noticed an info change [hevc_rkmpp @ 0x558f2ae520] Decoder options: deint=true afbc=0 fast_parse=true buf_mode=0 [hevc_rkmpp @ 0x558f2ae520] Configured with size: 3840x2160 | pix_fmt: drm_prime | sw_pix_fmt: nv15 [graph 0 input from stream 0:0 @ 0x558f2c6690] w:3840 h:2160 pixfmt:drm_prime tb:1/90000 fr:24000/1001 sar:1/1 [Parsed_scale_rkrga_0 @ 0x558f29c4a0] w:3840 h:2160 fmt:nv15 -> w:1920 h:1080 fmt:nv12 [Parsed_scale_rkrga_0 @ 0x558f29c4a0] Output format 'nv12' with AFBC modifier is not supported by RGA2 [h264_rkmpp @ 0x558f29bc30] Using input frames context (format drm_prime) with h264_rkmpp encoder. [h264_rkmpp @ 0x558f29bc30] Rate Control mode is set to VBR [h264_rkmpp @ 0x558f29bc30] Bitrate Target/Min/Max is set to 6000000/375000/6000000 [h264_rkmpp @ 0x558f29bc30] Stats time is set to 2 [h264_rkmpp @ 0x558f29bc30] QP Init/Max/Min/Max_I/Min_I is set to 26/48/0/48/0 [h264_rkmpp @ 0x558f29bc30] Profile is set to HIGH [h264_rkmpp @ 0x558f29bc30] 8x8 Transform is enabled [h264_rkmpp @ 0x558f29bc30] Level is set to 0 [h264_rkmpp @ 0x558f29bc30] Coder is set to CABAC Output #0, mp4, to 'test.mp4': Metadata: encoder : Lavf60.16.100 Stream #0:0: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), drm_prime(tv, bt2020nc/bt2020/smpte2084, progressive, l eft), 1920x1080 (0x0) [SAR 1:1 DAR 16:9], q=2-31, 6000 kb/s, 23.98 fps, 24k tbn Metadata: encoder : Lavc60.31.102 h264_rkmpp [h264_rkmpp @ 0x558f29bc30] Configured with size: 1920x1080 | pix_fmt: drm_prime | sw_pix_fmt: nv12 [in#0/mpegts @ 0x558f265f10] EOF while reading input2:08.33 bitrate=5670.3kbits/s speed=1.72x [in#0/mpegts @ 0x558f265f10] Terminating demuxer thread [vist#0:0/hevc @ 0x558f26c6a0] Decoder thread received EOF packette=5621.0kbits/s speed=1.73x [vist#0:0/hevc @ 0x558f26c6a0] Decoder returned EOF, finishing [vist#0:0/hevc @ 0x558f26c6a0] Terminating decoder thread No more output streams to write to, finishing. [out#0/mp4 @ 0x558f26cbe0] All streams finished [out#0/mp4 @ 0x558f26cbe0] Terminating muxer thread [AVIOContext @ 0x558f2c5e60] Statistics: 91147594 bytes written, 2 seeks, 351 writeouts [out#0/mp4 @ 0x558f26cbe0] Output file #0 (test.mp4): [out#0/mp4 @ 0x558f26cbe0] Output stream #0:0 (video): 3110 frames encoded; 3110 packets muxed (91132721 bytes); [out#0/mp4 @ 0x558f26cbe0] Total: 3110 packets (91132721 bytes) muxed [out#0/mp4 @ 0x558f26cbe0] video:88997kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.016316% frame= 3110 fps= 41 q=-0.0 Lsize= 89011kB time=00:02:09.67 bitrate=5623.3kbits/s speed=1.73x [in#0/mpegts @ 0x558f265f10] Input file #0 (s.mp4): [in#0/mpegts @ 0x558f265f10] Input stream #0:0 (video): 3110 packets read (810703657 bytes); 3110 frames decoded; 0 decode erro rs; [in#0/mpegts @ 0x558f265f10] Total: 3110 packets (810703657 bytes) demuxed [AVIOContext @ 0x558f26e680] Statistics: 871715040 bytes read, 8 seeks Cheers and thank you!
softworkz 5066 Posted September 6, 2024 Posted September 6, 2024 Thanks for the log. It looks to be feasible. Probably it won't suffice for the Samsung Dubai sample (on the same site, you can try), but even Xbox can't play it without stuttering, so that's not a KO criterium. How does the result look like, did you try to play it (on a PC)? Can you try with tone mapping? (there's a link to an ffmpeg log from which you might be able to adapt the command line: https://github.com/nyanmisaka/ffmpeg-rockchip/issues/98)
danergo 37 Posted September 7, 2024 Author Posted September 7, 2024 Hi! I rechecked with Dubai ts (s2.mp4), and it almost reached 2x, please see the full log here: Quote $ ffmpeg -loglevel verbose -hwaccel rkmpp -hwaccel_output_format drm_prime -afbc rga -i S2.mp4 -c :a copy -strict -2 -vf scale_rkrga=w=1920:h=1080:format=nv12:afbc=1 -c:v h264_rkmpp -rc_mode VBR -b:v 6M -maxrate 6M -bufsize 12M -profile:v high -g:v 120 -y test2.mp4 ffmpeg version 8164ff7 Copyright (c) 2000-2023 the FFmpeg developers built with gcc 10 (Debian 10.2.1-6) configuration: --prefix=/usr --enable-gpl --enable-version3 --enable-libdrm --enable-rkmpp --enable-rkrga libavutil 58. 29.100 / 58. 29.100 libavcodec 60. 31.102 / 60. 31.102 libavformat 60. 16.100 / 60. 16.100 libavdevice 60. 3.100 / 60. 3.100 libavfilter 9. 12.100 / 9. 12.100 libswscale 7. 5.100 / 7. 5.100 libswresample 4. 12.100 / 4. 12.100 libpostproc 57. 3.100 / 57. 3.100 Routing option strict to both codec and muxer layer [mpegts @ 0x5598448030] start time for stream 1 is not set in estimate_timings_from_pts [mpegts @ 0x5598448030] stream 1 : no TS found at start of file, duration not set [mpegts @ 0x5598448030] Could not find codec parameters for stream 1 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels): unspecifi ed sample format Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (5000000) options Selecting decoder 'hevc_rkmpp' because of requested hwaccel method rkmpp Input #0, mpegts, from 'S2.mp4': Duration: 00:01:46.19, start: 1.083411, bitrate: 51815 kb/s Program 1 Stream #0:0[0x101]: Video: hevc (Main 10), 1 reference frame ([36][0][0][0] / 0x0024), yuv420p10le(tv, bt709, left), 3840x2160 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 90k tbn Stream #0:1[0x102](und): Audio: aac ([15][0][0][0] / 0x000F), 0 channels [out#0/mp4 @ 0x559844ebe0] No explicit maps, mapping streams automatically... [vost#0:0/h264_rkmpp @ 0x559847d760] Created video stream from input stream 0:0 [hevc_mp4toannexb @ 0x5598490ca0] The input looks like it is Annex B already rga_api version 1.10.0_[8] [hevc_rkmpp @ 0x55984a2290] AFBC is requested without capable RGA, ignoring [hevc_rkmpp @ 0x55984a2290] Picked up an existing RKMPP hardware device Stream mapping: Stream #0:0 -> #0:0 (hevc (hevc_rkmpp) -> h264 (h264_rkmpp)) Press [q] to stop, [?] for help [hevc_rkmpp @ 0x55984a2290] Noticed an info change [hevc_rkmpp @ 0x55984a2290] Decoder options: deint=true afbc=0 fast_parse=true buf_mode=0 [hevc_rkmpp @ 0x55984a2290] Configured with size: 3840x2160 | pix_fmt: drm_prime | sw_pix_fmt: nv15 [graph 0 input from stream 0:0 @ 0x55984abaa0] w:3840 h:2160 pixfmt:drm_prime tb:1/90000 fr:24000/1001 sar:1/1 [Parsed_scale_rkrga_0 @ 0x55984501a0] w:3840 h:2160 fmt:nv15 -> w:1920 h:1080 fmt:nv12 [Parsed_scale_rkrga_0 @ 0x55984501a0] Output format 'nv12' with AFBC modifier is not supported by RGA2 [h264_rkmpp @ 0x559844f8c0] Using input frames context (format drm_prime) with h264_rkmpp encoder. [h264_rkmpp @ 0x559844f8c0] Rate Control mode is set to VBR [h264_rkmpp @ 0x559844f8c0] Bitrate Target/Min/Max is set to 6000000/375000/6000000 [h264_rkmpp @ 0x559844f8c0] Stats time is set to 2 [h264_rkmpp @ 0x559844f8c0] QP Init/Max/Min/Max_I/Min_I is set to 26/48/0/48/0 [h264_rkmpp @ 0x559844f8c0] Profile is set to HIGH [h264_rkmpp @ 0x559844f8c0] 8x8 Transform is enabled [h264_rkmpp @ 0x559844f8c0] Level is set to 0 [h264_rkmpp @ 0x559844f8c0] Coder is set to CABAC Output #0, mp4, to 'test2.mp4': Metadata: encoder : Lavf60.16.100 Stream #0:0: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), drm_prime(tv, bt709, progressive, left), 1920x1080 (0x0 ) [SAR 1:1 DAR 16:9], q=2-31, 6000 kb/s, 23.98 fps, 24k tbn Metadata: encoder : Lavc60.31.102 h264_rkmpp [h264_rkmpp @ 0x559844f8c0] Configured with size: 1920x1080 | pix_fmt: drm_prime | sw_pix_fmt: nv12 [in#0/mpegts @ 0x5598447f10] EOF while reading input1:45.02 bitrate=5491.4kbits/s speed=1.92x [in#0/mpegts @ 0x5598447f10] Terminating demuxer thread [vist#0:0/hevc @ 0x559844e6a0] Decoder thread received EOF packet [vist#0:0/hevc @ 0x559844e6a0] Decoder returned EOF, finishing [vist#0:0/hevc @ 0x559844e6a0] Terminating decoder thread No more output streams to write to, finishing.e=00:01:46.14 bitrate=5452.9kbits/s speed=1.92x [out#0/mp4 @ 0x559844ebe0] All streams finished [out#0/mp4 @ 0x559844ebe0] Terminating muxer thread [AVIOContext @ 0x55984aae30] Statistics: 72464685 bytes written, 2 seeks, 280 writeouts [out#0/mp4 @ 0x559844ebe0] Output file #0 (test2.mp4): [out#0/mp4 @ 0x559844ebe0] Output stream #0:0 (video): 2546 frames encoded; 2546 packets muxed (72452436 bytes); [out#0/mp4 @ 0x559844ebe0] Total: 2546 packets (72452436 bytes) muxed [out#0/mp4 @ 0x559844ebe0] video:70754kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.016901% frame= 2546 fps= 46 q=-0.0 Lsize= 70766kB time=00:01:46.14 bitrate=5461.4kbits/s speed=1.92x [in#0/mpegts @ 0x5598447f10] Input file #0 (S2.mp4): [in#0/mpegts @ 0x5598447f10] Input stream #0:0 (video): 2546 packets read (663682157 bytes); 2546 frames decoded; 0 decode erro rs; [in#0/mpegts @ 0x5598447f10] Total: 2546 packets (663682157 bytes) demuxed [AVIOContext @ 0x5598450680] Statistics: 717528656 bytes read, 8 seeks Regarding tone mapping, I couldn't find out what would be needed to check (I only have my phone with me). Note: I also checked the Wonderland transcoded sample on a large TV and it looks almost as good as original (tv is fhd). Cheers and thanks!
softworkz 5066 Posted September 7, 2024 Posted September 7, 2024 4 hours ago, danergo said: Regarding tone mapping, I couldn't find out what would be needed to check Just go to the issue link I posted, there's a link to an ffmpeg log from which you might be able to adapt the command line: https://github.com/nyanmisaka/ffmpeg-rockchip/issues/98) 4 hours ago, danergo said: Note: I also checked the Wonderland transcoded sample on a large TV and it looks almost as good as original (tv is fhd). But not tone mapped, right? Have you seen the original on a`n HDR display?
lexm8 1 Posted September 7, 2024 Posted September 7, 2024 On 9/3/2024 at 12:52 AM, softworkz said: A 4k video has 8 times the horizontal and 8 times the vertical resolution. This means that the amount of data to process is 64 times more than in this example. The transcoding speed is around 25 fps (same like the video), so that's already the absolute minimum in order to do live transcoding. Thought I'd just jump in here, currently running Jellyfin on Ubuntu 22.04 in Docker on a Rock5C Lite (RK3582 converted to RK3588S2 by unlocking the disabled cores & GPU) with HWA using the VPU and I'm transcoding Interstellar from 4K HEVC at 68 FPS with subs on. FFMPEG CPU usage looks to be averaging 20-30% would love to see some more work here on the RK3588 as this thing looks like an absolute powerhouse for the price & power usage. I think I've attached the correct FFMPEG logs however if it's not, just point me in the right direction & I'm happy to get whatever. FFmpeg.Transcode-2024-09-07_16-06-48_65b250eabcbe17a66b42759ae8b8a72f_4fbb6401.log.txt 1
danergo 37 Posted September 8, 2024 Author Posted September 8, 2024 On 9/7/2024 at 3:08 PM, softworkz said: Just go to the issue link I posted, there's a link to an ffmpeg log from which you might be able to adapt the command line: https://github.com/nyanmisaka/ffmpeg-rockchip/issues/98) But not tone mapped, right? Have you seen the original on a`n HDR display? Hi! I was travelling. Back to the status: The issue you have linked (at least for me) doesn't contains any ffmpeg log (only a "search" in github with ffmpeg-related keyword, and a simple commit). Note: I haven't checked with a HDR display, but on a simple one, all testfiles were perfect (both original and transcoded versions). How shall we move on? Cheers, thanks!
softworkz 5066 Posted September 8, 2024 Posted September 8, 2024 Oh sorry, the link was 28 not 98: https://github.com/nyanmisaka/ffmpeg-rockchip/issues/28 (second link in first message)
danergo 37 Posted September 9, 2024 Author Posted September 9, 2024 Thanks. Are you referring to this parameter: -vf "setparams=color_primaries=bt2020:color_trc=smpte2084:colorspace=bt2020nc,scale_rkrga=format=p010,hwmap=derive_device=opencl:mode=read,tonemap_opencl=format=nv12:p=bt709:t=bt709:m=bt709:tonemap=bt2390:peak=100:desat=0:tradeoff=1,hwmap=derive_device=rkmpp:mode=write:reverse=1,format=drm_prime" Mine was previously: -vf scale_rkrga=w=1920:h=1080:format=nv12:afbc=1 How shall I test this for you? Like this? -vf "setparams=color_primaries=bt2020:color_trc=smpte2084:colorspace=bt2020nc,scale_rkrga=w=1920:h=1080:format=nv12:afbc=1,hwmap=derive_device=opencl:mode=read,tonemap_opencl=format=nv12:p=bt709:t=bt709:m=bt709:tonemap=bt2390:peak=100:desat=0:tradeoff=1,hwmap=derive_device=rkmpp:mode=write:reverse=1,format=drm_prime" Thank you
softworkz 5066 Posted September 9, 2024 Posted September 9, 2024 Yes, I meant the filter chain with OpenCL tone mapping
danergo 37 Posted September 10, 2024 Author Posted September 10, 2024 Okay, well, this one is not working. [AVFilterGraph @ 0x5571289dd0] No such filter: 'tonemap_opencl' [vost#0:0/h264_rkmpp @ 0x55712918c0] Error initializing a simple filtergraph I don't really need tonemap (as of now), so would be happy to move on without hardware tonemap.
softworkz 5066 Posted September 10, 2024 Posted September 10, 2024 1 hour ago, danergo said: No such filter: 'tonemap_opencl' Right, that requires compiling with opencl support
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now