avcodec/nvenc: Drop support for old nvenc api
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
c20eab5c85
commit
48f7c30bf7
@ -7,6 +7,7 @@ version <next>:
|
|||||||
- DTS lossless extension (XLL) decoding (not lossless, disabled by default)
|
- DTS lossless extension (XLL) decoding (not lossless, disabled by default)
|
||||||
- showwavespic filter
|
- showwavespic filter
|
||||||
- libdcadec wrapper
|
- libdcadec wrapper
|
||||||
|
- Drop support for nvenc API before 5.0
|
||||||
|
|
||||||
|
|
||||||
version 2.6:
|
version 2.6:
|
||||||
|
2
configure
vendored
2
configure
vendored
@ -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 libzmq && require_pkg_config libzmq zmq.h zmq_ctx_new
|
||||||
enabled libzvbi && require libzvbi libzvbi.h vbi_decoder_new -lzvbi
|
enabled libzvbi && require libzvbi libzvbi.h vbi_decoder_new -lzvbi
|
||||||
enabled nvenc && { check_header nvEncodeAPI.h || die "ERROR: nvEncodeAPI.h not found."; } &&
|
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."; }
|
{ [ $target_os != cygwin ] || die "ERROR: NVENC is not supported on Cygwin currently."; }
|
||||||
enabled openal && { { for al_libs in "${OPENAL_LIBS}" "-lopenal" "-lOpenAL32"; do
|
enabled openal && { { for al_libs in "${OPENAL_LIBS}" "-lopenal" "-lOpenAL32"; do
|
||||||
check_lib 'AL/al.h' alGetError "${al_libs}" && break; done } ||
|
check_lib 'AL/al.h' alGetError "${al_libs}" && break; done } ||
|
||||||
|
@ -67,10 +67,6 @@ typedef CUresult(CUDAAPI *PCUCTXDESTROY)(CUcontext ctx);
|
|||||||
|
|
||||||
typedef NVENCSTATUS (NVENCAPI* PNVENCODEAPICREATEINSTANCE)(NV_ENCODE_API_FUNCTION_LIST *functionList);
|
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
|
typedef struct NvencInputSurface
|
||||||
{
|
{
|
||||||
NV_ENC_INPUT_PTR input_surface;
|
NV_ENC_INPUT_PTR input_surface;
|
||||||
@ -474,10 +470,6 @@ static av_cold int nvenc_encode_init(AVCodecContext *avctx)
|
|||||||
int res = 0;
|
int res = 0;
|
||||||
int dw, dh;
|
int dw, dh;
|
||||||
|
|
||||||
#if NVENCAPI_MAJOR_VERSION < 5
|
|
||||||
GUID license = dummy_license;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
NvencContext *ctx = avctx->priv_data;
|
NvencContext *ctx = avctx->priv_data;
|
||||||
NvencDynLoadFunctions *dl_fn = &ctx->nvenc_dload_funcs;
|
NvencDynLoadFunctions *dl_fn = &ctx->nvenc_dload_funcs;
|
||||||
NV_ENCODE_API_FUNCTION_LIST *p_nvenc = &dl_fn->nvenc_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.version = NV_ENC_OPEN_ENCODE_SESSION_EX_PARAMS_VER;
|
||||||
encode_session_params.apiVersion = NVENCAPI_VERSION;
|
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) {
|
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);
|
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);
|
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.sliceMode = ctx->encode_config.encodeCodecConfig.h264Config.sliceMode;
|
||||||
pic_params.codecPicParams.h264PicParams.sliceModeData = ctx->encode_config.encodeCodecConfig.h264Config.sliceModeData;
|
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);
|
res = timestamp_queue_enqueue(&ctx->timestamp_list, frame->pts);
|
||||||
|
|
||||||
if (res)
|
if (res)
|
||||||
|
@ -30,7 +30,7 @@
|
|||||||
|
|
||||||
#define LIBAVCODEC_VERSION_MAJOR 56
|
#define LIBAVCODEC_VERSION_MAJOR 56
|
||||||
#define LIBAVCODEC_VERSION_MINOR 29
|
#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, \
|
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
|
||||||
LIBAVCODEC_VERSION_MINOR, \
|
LIBAVCODEC_VERSION_MINOR, \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user