Opened 3 years ago

Last modified 7 months ago

#9131 reopened defect

libx265 Dolby Vision options

Reported by: kliff Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: libx265
Cc: Dominik Mierzejewski Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

ffmpeg -y -loglevel debug -i LA_A006_C008_4K_HDR_HEVC.mov -map 0:0 -pix_fmt yuv420p10le -t 1 -c:v libx265 -crf 16 -preset:v slow -profile:v main10 -x265-params "master-display='G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(40000000,50)':max-cll='10000,103':colormatrix=bt2020nc:colorprim=bt2020:transfer=smpte2084:dolby-vision-rpu='LA_RPU.bin':dolby-vision-profile=8.1:vbv-bufsize=40000:vbv-maxrate=20000:range=limited:repeat-headers=1:hrd=1:hdr10=1:hdr10-opt=1:aud=1:keyint=300:min-keyint=30:chromaloc=1:fps=30000/1001" -f hevc LA_DV_encoded.hevc
ffmpeg version N-101349-g5224b251ce-g4cb989e836+2 Copyright (c) 2000-2021 the FFmpeg developers

built with gcc 10.2.0 (Rev6, Built by MSYS2 project)
configuration: --pkg-config=pkgconf --cc='ccache gcc' --cxx='ccache g++' --ld='ccache g++' --enable-nonfree --disable-debug --enable-libmfx --enable-libnpp --enable-cuvid --enable-nvenc --enable-nvdec --enable-d3d11va --enable-dxva2 --enable-libass --enable-libbluray --enable-libfdk-aac --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libsoxr --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libaom --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-zlib --enable-bzlib --enable-lzma --enable-opencl --enable-opengl --enable-schannel --extra-cflags=-DLIBXML_STATIC --enable-gpl --extra-cflags='-IC:/PROGRA~1/NVIDIA~2/CUDA/v11.2/include' --extra-ldflags='-LC:/PROGRA~1/NVIDIA~2/CUDA/v11.2/lib/x64'
libavutil 56. 66.100 / 56. 66.100
libavcodec 58.126.100 / 58.126.100
libavformat 58. 68.100 / 58. 68.100
libavdevice 58. 12.100 / 58. 12.100
libavfilter 7.107.100 / 7.107.100
libswscale 5. 8.100 / 5. 8.100
libswresample 3. 8.100 / 3. 8.100
libpostproc 55. 8.100 / 55. 8.100

...
[libx265 @ 00000148e5ea3140] Unknown option: dolby-vision-rpu.
the option dolby-vision-profile is also not used

Attachments (1)

ffmpeg-20210301-162000.log (1.2 MB ) - added by kliff 3 years ago.

Download all attachments as: .zip

Change History (6)

by kliff, 3 years ago

Attachment: ffmpeg-20210301-162000.log added

comment:1 by Carl Eugen Hoyos, 3 years ago

Component: ffmpegundetermined
Resolution: invalid
Status: newclosed

This does not look like an issue that can be fixed in the FFmpeg source code.
(Update your libx265?)

comment:2 by Balling, 3 years ago

No need to update. https://github.com/BtbN/FFmpeg-Builds/commit/3119034c9234be55afaccecfe3a457bb4e0eb402

This is a WONTFIX bug in ffmpeg. https://github.com/HandBrake/HandBrake/issues/2317#issuecomment-537433197

See https://unix.stackexchange.com/questions/230800/re-encoding-video-library-in-x265-hevc-with-no-quality-loss "except those CLI-only ones, those are only used with x265 binary directly"

Did you use https://github.com/quietvoid/dovi_tool to extract RPU?

Then you can use this command to encode. https://forum.doom9.org/showthread.php?t=176006

Other affected commands: zonefile qpfile dolby-vision-rpu recon

Last edited 3 years ago by Balling (previous) (diff)

comment:3 by Balling, 2 years ago

Resolution: invalid
Status: closedreopened

I am going to reopen this since I am sure you can hack CLI-only option somehow and we are planning to somehow pass RPU metadata to x265, see 54e65aa38abb37d6af92551b7e3adf6785f631ec (Dolby Vision RPU data, suitable for passing to x265 or other libraries).

Nice test file also: https://drive.google.com/file/d/1-8C0ZYnIhEqOVJQ532hIJobP5XR6A7gj/view?usp=sharing

comment:4 by Dominik Mierzejewski, 9 months ago

Cc: Dominik Mierzejewski added

comment:5 by R. Linden, 7 months ago

Any updates here? I also would love to have support for the dolby-vision-rpu='dolby_vision.bin' parameter directly. At least x265 supports it, but not ffmpeg using -x265-params

Note: See TracTickets for help on using tickets.