summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimo Rothenpieler <timo@rothenpieler.org>2015-03-24 10:26:57 +0100
committerMichael Niedermayer <michaelni@gmx.at>2015-03-24 17:25:11 +0100
commit48f7c30bf793fcde604cc457225b7c93f87b3692 (patch)
tree560fef52cce818444e9c10df3bc3d9f9c449daac
parentc20eab5c850f535b0892db6c6166faffe9683979 (diff)
downloadffmpeg-streaming-48f7c30bf793fcde604cc457225b7c93f87b3692.zip
ffmpeg-streaming-48f7c30bf793fcde604cc457225b7c93f87b3692.tar.gz
avcodec/nvenc: Drop support for old nvenc api
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--Changelog1
-rwxr-xr-xconfigure2
-rw-r--r--libavcodec/nvenc.c16
-rw-r--r--libavcodec/version.h2
4 files changed, 4 insertions, 17 deletions
diff --git a/Changelog b/Changelog
index 4950330..567bd74 100644
--- a/Changelog
+++ b/Changelog
@@ -7,6 +7,7 @@ version <next>:
- DTS lossless extension (XLL) decoding (not lossless, disabled by default)
- showwavespic filter
- libdcadec wrapper
+- Drop support for nvenc API before 5.0
version 2.6:
diff --git a/configure b/configure
index 4827a4d..ede517e 100755
--- a/configure
+++ b/configure
@@ -4998,6 +4998,8 @@ enabled libxvid && require libxvid xvid.h xvid_global -lxvidcore
enabled libzmq && require_pkg_config libzmq zmq.h zmq_ctx_new
enabled libzvbi && require libzvbi libzvbi.h vbi_decoder_new -lzvbi
enabled nvenc && { check_header nvEncodeAPI.h || die "ERROR: nvEncodeAPI.h not found."; } &&
+ { check_cpp_condition nvEncodeAPI.h "NVENCAPI_MAJOR_VERSION >= 5" ||
+ die "ERROR: NVENC API version 4 or older is not supported"; } &&
{ [ $target_os != cygwin ] || die "ERROR: NVENC is not supported on Cygwin currently."; }
enabled openal && { { for al_libs in "${OPENAL_LIBS}" "-lopenal" "-lOpenAL32"; do
check_lib 'AL/al.h' alGetError "${al_libs}" && break; done } ||
diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c
index 22956b9..0dec720 100644
--- a/libavcodec/nvenc.c
+++ b/libavcodec/nvenc.c
@@ -67,10 +67,6 @@ typedef CUresult(CUDAAPI *PCUCTXDESTROY)(CUcontext ctx);
typedef NVENCSTATUS (NVENCAPI* PNVENCODEAPICREATEINSTANCE)(NV_ENCODE_API_FUNCTION_LIST *functionList);
-#if NVENCAPI_MAJOR_VERSION < 5
-static const GUID dummy_license = { 0x0, 0x0, 0x0, { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } };
-#endif
-
typedef struct NvencInputSurface
{
NV_ENC_INPUT_PTR input_surface;
@@ -474,10 +470,6 @@ static av_cold int nvenc_encode_init(AVCodecContext *avctx)
int res = 0;
int dw, dh;
-#if NVENCAPI_MAJOR_VERSION < 5
- GUID license = dummy_license;
-#endif
-
NvencContext *ctx = avctx->priv_data;
NvencDynLoadFunctions *dl_fn = &ctx->nvenc_dload_funcs;
NV_ENCODE_API_FUNCTION_LIST *p_nvenc = &dl_fn->nvenc_funcs;
@@ -500,10 +492,6 @@ static av_cold int nvenc_encode_init(AVCodecContext *avctx)
encode_session_params.version = NV_ENC_OPEN_ENCODE_SESSION_EX_PARAMS_VER;
encode_session_params.apiVersion = NVENCAPI_VERSION;
-#if NVENCAPI_MAJOR_VERSION < 5
- encode_session_params.clientKeyPtr = &license;
-#endif
-
if (ctx->gpu >= dl_fn->nvenc_device_count) {
av_log(avctx, AV_LOG_FATAL, "Requested GPU %d, but only %d GPUs are available!\n", ctx->gpu, dl_fn->nvenc_device_count);
res = AVERROR(EINVAL);
@@ -1108,10 +1096,6 @@ static int nvenc_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
pic_params.codecPicParams.h264PicParams.sliceMode = ctx->encode_config.encodeCodecConfig.h264Config.sliceMode;
pic_params.codecPicParams.h264PicParams.sliceModeData = ctx->encode_config.encodeCodecConfig.h264Config.sliceModeData;
-#if NVENCAPI_MAJOR_VERSION < 5
- memcpy(&pic_params.rcParams, &ctx->encode_config.rcParams, sizeof(NV_ENC_RC_PARAMS));
-#endif
-
res = timestamp_queue_enqueue(&ctx->timestamp_list, frame->pts);
if (res)
diff --git a/libavcodec/version.h b/libavcodec/version.h
index 40e3e21..d2950ec 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -30,7 +30,7 @@
#define LIBAVCODEC_VERSION_MAJOR 56
#define LIBAVCODEC_VERSION_MINOR 29
-#define LIBAVCODEC_VERSION_MICRO 100
+#define LIBAVCODEC_VERSION_MICRO 101
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
LIBAVCODEC_VERSION_MINOR, \
OpenPOWER on IntegriCloud