[FFmpeg-devel] x265 rpu processing

Robin van der Linden linden at venom.one
Thu Sep 28 13:22:08 EEST 2023


What list would you suggest instead, main?

The command was just a snipped, normally would do something like this:

/usr/bin/ffmpeg -i "/home/robin/dolby_vision_test_8_1 - [2160p].mp4" 
-map 0:0 -c:v libx265 -preset slower -ss 00:00:00 -to 00:00:10  -crf 20 
-vf zscale=3840:2160,hqdn3d=0.4:0.4:1.25:1.25  -x265-params 
"aq-mode=2:aq-strength=0.8:early-skip=1:ref=4:me=star:subme=4:merange=64:rc-lookahead=5:wpp=1:strong-intra-smoothing=1:rect=0:rd=4:psy-rd=0.1:psy-rdoq=0.20:rdoq-level=2:rskip=2:bframes=4:b-adapt=2:analyze-src-pics=1:colorprim=bt2020:transfer=smpte2084:colormatrix=bt2020nc:hdr10_opt=1:master-display=G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(10000000,50):max-cll=2738,90:hdr10=1:chromaloc=2:dhdr10-info='/path/to/metadata.json':vbv-maxrate=2400:vbv-bufsize=4800:dolby-vision-profile='8.1':dolby-vision-rpu='/path/to/dolby_vision.bin'" 
-pix_fmt yuv420p10le -color_trc smpte2084 -profile:v main10 -vtag hvc1 
-force_key_frames "expr:gte(t,n_forced*4)" -g 100 -keyint_min 100 -r 25 
-use_timeline 1 -use_template 1 -map_metadata -1 -map_chapters -1 -f hls 
-seg_duration 4 -hls_time 4 -segment_format mp4 -streaming 1 
-hls_list_size 0 -hls_segment_filename "/home/robin/test/output/test - 
[2160p]/v-hevc-2160p/%04d.m4s"  -hls_fmp4_init_filename 
"init-v-hevc-2160p.m4s"  -hls_segment_type fmp4 -hls_playlist_type vod 
-movflags 
frag_keyframe+frag_every_frame+write_colr+prefer_icc+skip_trailer+faststart 
-hls_flags independent_segments "/home/robin/test/output/test - 
[2160p]/v-hevc-2160/master.m3u8"

But ffmpeg returns the following for the command above:

[libx265 @ 0x6aa6f00] Unknown option: dolby-vision-rpu.
x265 [info]: HEVC encoder version 3.5+1-f0c1022b6
x265 [info]: build info [Linux][GCC 9.4.0][64 bit] 10bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 
AVX FMA3 BMI2 AVX2
x265 [warning]: Turning on repeat-headers for HDR compatibility
x265 [info]: Main 10 profile, Level-5 (Main tier)
x265 [info]: Thread pool created using 16 threads
x265 [info]: Slices                              : 1
x265 [info]: frame threads / pool features       : 4 / wpp(34 rows)
x265 [info]: Coding QT: max CU size, min CU size : 64 / 8
x265 [info]: Residual QT: max TU size, max depth : 32 / 3 inter / 3 
intra
x265 [info]: ME / range / subpel / merge         : star / 64 / 4 / 4
x265 [info]: Keyframe min / max / scenecut / bias  : 100 / 100 / 40 / 
5.00
x265 [info]: Lookahead / bframes / badapt        : 5 / 4 / 2
x265 [info]: b-pyramid / weightp / weightb       : 1 / 1 / 1
x265 [info]: References / ref-limit  cu / depth  : 4 / off / on
x265 [info]: AQ: mode / str / qg-size / cu-tree  : 2 / 0.8 / 32 / 1
x265 [info]: Rate Control / qCompress            : CRF-20.0 / 0.60
x265 [info]: VBV/HRD buffer / max-rate / init    : 4800 / 2400 / 0.900
x265 [info]: tools: limit-modes rd=4 psy-rd=0.10 rdoq=2 psy-rdoq=0.20
x265 [info]: tools: early-skip rskip mode=2 rskip-edge-threshold=0.05
x265 [info]: tools: limit-tu=4 signhide tmvp b-intra 
strong-intra-smoothing
x265 [info]: tools: deblock sao dhdr10-info
[hls @ 0x6b32dc0] Opening '/home/robin/test/output/test - 
[2160p]/v-hevc-2160/init-v-hevc-2160p.m4s' for writing
Output #0, hls, to '/home/robin/test/output/test - 
[2160p]/v-hevc-2160/master.m3u8':
   Metadata:
     encoder         : Lavf60.3.100
   Stream #0:0(eng): Video: hevc (hvc1 / 0x31637668), yuv420p10le(tv, 
bt2020nc/bt2020/smpte2084, progressive), 3840x2160 [SAR 1:1 DAR 16:9], 
q=2-31, 25 fps, 12800 tbn (default)
     Metadata:
       creation_time   : 2023-08-03T22:42:18.000000Z
       vendor_id       : [0][0][0][0]
       encoder         : Lavc60.3.100 libx265
     Side data:
       cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: N/A
       DOVI configuration record: version: 1.0, profile: 8, level: 7, rpu 
flag: 1, el flag: 0, bl flag: 1, compatibility id: 1
[hls @ 0x6b32dc0] Opening '/home/robin/test/output/test - 
[2160p]/v-hevc-2160p/0000.m4s' for writingeed=N/A
[hls @ 0x6b32dc0] Opening /home/robin/test/output/test - 
[2160p]/v-hevc-2160p/0001.m4s' for writing
[hls @ 0x6b32dc0] Opening '/home/robin/test/output/test - 
[2160p]/v-hevc-2160p/0002.m4s' for writing
frame=  250 fps= 11 q=27.9 Lsize=N/A time=00:00:09.88 bitrate=N/A dup=10 
drop=0 speed=0.433x
video:869kB audio:0kB subtitle:0kB other streams:0kB global headers:3kB 
muxing overhead: unknown
x265 [info]: frame I:      3, Avg QP:22.17  kb/s: 12159.67
x265 [info]: frame P:     56, Avg QP:24.70  kb/s: 1912.89
x265 [info]: frame B:    191, Avg QP:27.52  kb/s: 147.61
x265 [info]: Weighted P-Frames: Y:26.8% UV:25.0%
x265 [info]: Weighted B-Frames: Y:30.9% UV:27.7%

encoded 250 frames in 22.55s (11.08 fps), 687.17 kb/s, Avg QP:26.82


Thanks in advance,

Robin

Am 2023-09-28 12:01, schrieb Andreas Rheinhardt:
> Robin van der Linden via ffmpeg-devel:
>> Hello,
>> 
>> I've observed that the "-x265-params dolby-vision-rpu /path/to/rpu"
>> doesn't seem to work in my ffmpeg command. Though the libx265
>> documentation indicates the presence of this parameter, ffmpeg appears
>> to be having trouble recognizing it. In fact, ffmpeg reports it as an
>> unknown parameter. Is this option exclusive to CLI currently? Is there
>> any anticipated support for it in the future?
>> 
>> For reference, here's the x265 documentation:
>> https://x265.readthedocs.io/en/master/cli.html
>> 
> 1. Wrong list.
> 2. That's not how x265-params is supposed to be set:
> "set the x265 configuration using a :-separated list of key=value
> parameters"
> 
> - Andreas
> 
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".

-- 
Grüße / Kind regards,

Robin van der Linden


More information about the ffmpeg-devel mailing list