A guide that teach you enable hardware HEVC decoding & encoding for Chrome / Edge, or build a custom version of Chromium / Electron that supports hardware & software HEVC decoding and hardware HEVC encoding.
The libavcodec/dynamic_hdr10_plus.c file entry will need removed from the FFmpeg patch and JS script when building Chromium 114. Not sure about earlier branches. Thanks for your efforts! :)
diff --git a/add-hevc-ffmpeg-decoder-parser.js b/add-hevc-ffmpeg-decoder-parser.js
index 663cdfa..83076fd 100644
--- a/add-hevc-ffmpeg-decoder-parser.js
+++ b/add-hevc-ffmpeg-decoder-parser.js
@@ -40,7 +40,6 @@ const patches = [
ffmpeg_c_sources : [
'libavcodec/autorename_libavcodec_bswapdsp.c',
'libavcodec/dovi_rpu.c',
- 'libavcodec/dynamic_hdr10_plus.c',
'libavcodec/dynamic_hdr_vivid.c',
'libavcodec/hevc_cabac.c',
'libavcodec/hevc_data.c',
@@ -254,4 +253,4 @@ function enableSoftwreDecodeHEVC() {
}
enableSoftwreDecodeHEVC();
-console.log('Modify ffmpeg success!');
\ No newline at end of file
+console.log('Modify ffmpeg success!');
Related FFmpeg commit:
https://github.com/FFmpeg/FFmpeg/commit/6f2413a203c7dced3230f82cbc2c053872c1a713
The libavcodec/dynamic_hdr10_plus.c file entry will need removed from the FFmpeg patch and JS script when building Chromium 114. Not sure about earlier branches. Thanks for your efforts! :)