Skip to main content

hdr10plus_tool

hdr10plus_tool is a command line tool written in Rust for working with HDR10+ in HEVC files. It was previously named hdr10plus_parser.

Installation​

You can download official pre-built binaries for Linux & macOS from the GitHub Releases, or you may compile the tool yourself via the instructions below.

Ensure you have Rust installed.

git clone https://github.com/quietvoid/hdr10plus_tool.git
cd hdr10plus_tool
RUSTFLAGS="-C target-cpu=native" cargo build --release

Usage​

General usage
hdr10plus_tool [OPTIONS] <SUBCOMMAND>
Get more options for a subcommand
hdr10plus_tool <SUBCOMMAND> --help

Extracting​

Extract using FFmpeg pipe (Recommended)
ffmpeg -hide_banner -strict -2 -i input.mkv -map 0:v:0 -c copy -vbsf hevc_mp4toannexb -f hevc - | hdr10plus_tool extract -o metadata.json -
Extract from raw bitstream
hdr10plus_tool extract video.hevc -o metadata.json

Injecting​

Inject to raw bitstream
hdr10plus_tool inject -i video.hevc -j metadata.json -o injected_output.hevc

Removing HDR10+ Metadata​

Remove using FFmpeg pipe (Recommended)
ffmpeg -hide_banner -strict -2 -i input.mkv -map 0:v:0 -c copy -vbsf hevc_mp4toannexb -f hevc - | hdr10plus_tool remove -
Remove from raw bitstream
hdr10plus_tool remove video.hevc -o hdr10plus_removed_output.hevc