Permalink
Switch branches/tags
v71.0.3555.0-r591690-win64 v70.0.3533.0-r586031-win64 v70.0.3518.0-r581881-win64 v70.0.3518.0-r581881-win32 v70.0.3506.0-r578936-win64 v70.0.3506.0-r578936-win32 v69.0.3497.100-r576753-win64 v69.0.3497.100-r576753-win32 v69.0.3497.92-r576753-win64 v69.0.3497.92-r576753-win32 v69.0.3497.81-r576753-win64 v69.0.3497.81-r576753-win32 v69.0.3496.0-r576176-win64 v69.0.3496.0-r576176-win32 v68.0.3440.106-r561733-win64 v68.0.3440.106-r561733-win32 v68.0.3440.84-r561733-win64 v68.0.3440.84-r561733-win32 v68.0.3440.75-r561733-win64 v68.0.3440.75-r561733-win32 v68.0.3439.0-r560956-win32 v68.0.3424.0-r556419-win64 v68.0.3424.0-r556419-win32 v67.0.3396.99-r550428-win64 v67.0.3396.99-r550428-win32 v67.0.3386.0-r547390-win32 v66.0.3359.181-r540276-win64 v66.0.3359.181-r540276-win32 v66.0.3343.0-r534979-win32 v65.0.3325.181-r530369-win64 v65.0.3325.181-r530369-win32 v65.0.3315.0-r527543-win32 v64.0.3282.186-r520840-win64 v64.0.3282.186-r520840-win32 v64.0.3275.0-r518192-win32 v63.0.3239.132-r508578-win64 v63.0.3239.132-r508578-win32 v63.0.3236.0-r507300-win32 v62.0.3202.94-r499098-win64 v62.0.3202.94-r499098-win32 v62.0.3202.0-r498762-win32 v61.0.3163.100-r488528-win64 v61.0.3163.100-r488528-win32 v61.0.3159.0-r487001-win32 v60.0.3112.113-r474897-win64 v60.0.3112.113-r474897-win32 v60.0.3105.0-r473261-win32 v59.0.3071.115-r464641-win64 v59.0.3071.115-r464641-win32 v59.0.3067.0-r463134-win32 v58.0.3029.110-r454471-win64 v58.0.3029.110-r454471-win32 v58.0.3024.0-r453103-win32 v57.0.2987.133-r444943-win64 v57.0.2987.133-r444943-win32 v56.0.2924.87-r433059-win64 v56.0.2924.87-r433059-win32 v55.0.2883.87-r423768-win64 v55.0.2883.87-r423768-win32 v54.0.2840.99-r414607-win64 v54.0.2840.99-r414607-win32 v53.0.2785.143-r403382-win64 v53.0.2785.143-r403382-win32 v52.0.2743.120-r394939-win64 v52.0.2743.120-r394939-win32 v49.0.2623.112-r403382-win32
Nothing to show
Find file Copy path
9359290 Sep 22, 2017
1 contributor

Users who have contributed to this file

116 lines (99 sloc) 3 KB

HEVC support

For version 61 and above

in the file:

  • src/third_party/ffmpeg/ffmpeg_generated.gni

append to your condition:

ffmpeg_c_sources += [
    "libavcodec/bswapdsp.c",
    "libavcodec/autorename_libavcodec_hevcdec.c",
    "libavcodec/hevc_cabac.c",
    "libavcodec/hevc_data.c",
    "libavcodec/hevc_filter.c",
    "libavcodec/hevc_mvs.c",
    "libavcodec/hevc_parse.c",
    "libavcodec/hevc_parser.c",
    "libavcodec/hevc_ps.c",
    "libavcodec/hevc_refs.c",
    "libavcodec/hevc_sei.c",
    "libavcodec/hevcdsp.c",
    "libavcodec/hevcpred.c",
    "libavcodec/x86/bswapdsp_init.c",
    "libavcodec/x86/hevcdsp_init.c",
    "libavformat/autorename_libavformat_hevc.c",
    "libavformat/hevcdec.c",
]
ffmpeg_yasm_sources += [
    "libavcodec/x86/bswapdsp.asm",
    "libavcodec/x86/hevc_deblock.asm",
    "libavcodec/x86/hevc_idct.asm",
    "libavcodec/x86/hevc_mc.asm",
    "libavcodec/x86/hevc_add_res.asm",
    "libavcodec/x86/hevc_sao.asm",
    "libavcodec/x86/hevc_sao_10bit.asm",
]

then go to src/third_party/ffmpeg folder and copy:

  • libavcodec/hevcdec.c to libavcodec/autorename_libavcodec_hevcdec.c
  • libavformat/hevc.c to libavformat/autorename_libavformat_hevc.c

in the files:

  • src/third_party/ffmpeg/chromium/config/YOUR_BRAND/win/YOUR_ARCH/config.asm
  • src/third_party/ffmpeg/chromium/config/YOUR_BRAND/win/YOUR_ARCH/config.h

add or replace some parameters..

add to existing:

#define FFMPEG_CONFIGURATION "******** --enable-decoder='hevc' --enable-demuxer='hevc' --enable-parser='hevc'"

replace to:

#define CONFIG_HEVC_DECODER 1
#define CONFIG_HEVC_DEMUXER 1
#define CONFIG_HEVC_PARSER 1

For version v60 and below

in the file:

  • src/third_party/ffmpeg/ffmpeg_generated.gni

append to your condition:

ffmpeg_c_sources += [
    "libavcodec/bswapdsp.c",
    "libavcodec/hevc.c",
    "libavcodec/hevc_cabac.c",
    "libavcodec/hevc_data.c",
    "libavcodec/hevc_filter.c",
    "libavcodec/hevc_mvs.c",
    "libavcodec/hevc_parse.c",
    "libavcodec/hevc_parser.c",
    "libavcodec/hevc_ps.c",
    "libavcodec/hevc_refs.c",
    "libavcodec/hevc_sei.c",
    "libavcodec/hevcdsp.c",
    "libavcodec/hevcpred.c",
    "libavcodec/x86/bswapdsp_init.c",
    "libavcodec/x86/hevcdsp_init.c",
    "libavformat/hevcdec.c",
]
ffmpeg_yasm_sources += [
    "libavcodec/x86/bswapdsp.asm",
    "libavcodec/x86/hevc_deblock.asm",
    "libavcodec/x86/hevc_idct.asm",
    "libavcodec/x86/hevc_mc.asm",
    "libavcodec/x86/hevc_res_add.asm",
    "libavcodec/x86/hevc_sao.asm",
    "libavcodec/x86/hevc_sao_10bit.asm",
]

in the files:

  • src/third_party/ffmpeg/chromium/config/YOUR_BRAND/win/YOUR_ARCH/config.asm
  • src/third_party/ffmpeg/chromium/config/YOUR_BRAND/win/YOUR_ARCH/config.h

add or replace some parameters..

add to existing:

#define FFMPEG_CONFIGURATION "******** --enable-decoder='hevc' --enable-demuxer='hevc' --enable-parser='hevc'"

replace to:

#define CONFIG_HEVC_DECODER 1
#define CONFIG_HEVC_DEMUXER 1
#define CONFIG_HEVC_PARSER 1