diff options
author | Scott <[email protected]> | 2018-06-29 19:48:26 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2018-06-29 19:48:26 +0100 |
commit | dbf898635dc12608b78c33916137465ce08937bf (patch) | |
tree | 2449891c1f1275e43673b9aa276b8e8905374b55 /contrib | |
parent | ac390b630498163ff37bea491202c0872bb679ec (diff) |
Add NVEnc encoder. (Round 3) (#1437)
Adding the Nvidia NVEnc H.264 and H.265 encoders.
Based on Initial work by sgothel
--enable-nvenc is the new compile time configure option to enable for builds.
Diffstat (limited to 'contrib')
-rw-r--r-- | contrib/ffmpeg/module.defs | 12 | ||||
-rw-r--r-- | contrib/nvenc/module.defs | 12 | ||||
-rw-r--r-- | contrib/nvenc/module.rules | 2 |
3 files changed, 25 insertions, 1 deletions
diff --git a/contrib/ffmpeg/module.defs b/contrib/ffmpeg/module.defs index 63924ad96..e24a897b9 100644 --- a/contrib/ffmpeg/module.defs +++ b/contrib/ffmpeg/module.defs @@ -5,6 +5,9 @@ endif ifeq (1,$(FEATURE.vce)) __deps__ += AMF endif +ifeq (1,$(FEATURE.nvenc)) +__deps__ += NVENC +endif $(eval $(call import.MODULE.defs,FFMPEG,ffmpeg,$(__deps__))) $(eval $(call import.CONTRIB.defs,FFMPEG)) @@ -107,7 +110,14 @@ ifeq (1,$(FEATURE.qsv)) endif ifeq (1,$(FEATURE.vce)) - FFMPEG.CONFIGURE.extra += --enable-amf --enable-encoder=h264_amf --enable-encoder=hevc_amf + FFMPEG.CONFIGURE.extra += --enable-amf --enable-encoder=h264_amf --enable-encoder=hevc_amf +endif + +ifeq (1,$(FEATURE.nvenc)) +FFMPEG.CONFIGURE.extra += \ + --enable-nvenc \ + --enable-encoder=h264_nvenc \ + --enable-encoder=hevc_nvenc endif ## enable compile verbosity diff --git a/contrib/nvenc/module.defs b/contrib/nvenc/module.defs new file mode 100644 index 000000000..e040b9ade --- /dev/null +++ b/contrib/nvenc/module.defs @@ -0,0 +1,12 @@ +$(eval $(call import.MODULE.defs,NVENC,nvenc)) +$(eval $(call import.CONTRIB.defs,NVENC)) + +NVENC.FETCH.url = https://download.handbrake.fr/contrib/nv-codec-headers-8.1.24.2.tar.gz +NVENC.FETCH.url += https://github.com/FFmpeg/nv-codec-headers/releases/download/n8.1.24.2/nv-codec-headers-8.1.24.2.tar.gz +NVENC.FETCH.sha256 = 2b339b2493f5b63b285dd660be05102af7d4ff2de9fcf3af94e48b5f91a3ca57 +NVENC.EXTRACT.tarbase = nv-codec-headers-n8.1.24.2 + +NVENC.CONFIGURE = $(TOUCH.exe) $@ +NVENC.BUILD.extra = PREFIX="$(NVENC.CONFIGURE.prefix)" +NVENC.INSTALL.extra = PREFIX="$(NVENC.CONFIGURE.prefix)" +NVENC.UNINSTALL.extra = PREFIX="$(NVENC.CONFIGURE.prefix)" diff --git a/contrib/nvenc/module.rules b/contrib/nvenc/module.rules new file mode 100644 index 000000000..976986a57 --- /dev/null +++ b/contrib/nvenc/module.rules @@ -0,0 +1,2 @@ +$(eval $(call import.MODULE.rules,NVENC)) +$(eval $(call import.CONTRIB.rules,NVENC)) |