diff options
author | Philip Langdale <philipl@overt.org> | 2015-06-06 11:09:15 -0700 |
---|---|---|
committer | Philip Langdale <philipl@overt.org> | 2015-06-06 13:14:14 -0700 |
commit | 7e4661174ae11f95cb3527a9f58f1a71d297359c (patch) | |
tree | ceefa735f54b6b3ebd43775bd34e47e735707e08 | |
parent | e79c40fe72475a37db44849c1e1399b593dcaffd (diff) | |
download | ffmpeg-7e4661174ae11f95cb3527a9f58f1a71d297359c.tar.gz |
avcodec/nvenc: Add 'nvenc_h264' as an alternative name for 'nvenc'
This allows us to offer the same codec name that libav uses. We don't have
a special way to do aliases, so it's all a bit more verbose than you'd want
but such is life.
Signed-off-by: Philip Langdale <philipl@overt.org>
-rwxr-xr-x | configure | 1 | ||||
-rw-r--r-- | libavcodec/allcodecs.c | 1 | ||||
-rw-r--r-- | libavcodec/nvenc.c | 25 |
3 files changed, 27 insertions, 0 deletions
@@ -2485,6 +2485,7 @@ libutvideo_decoder_deps="libutvideo" libutvideo_encoder_deps="libutvideo" libzvbi_teletext_decoder_deps="libzvbi" nvenc_encoder_deps="nvenc" +nvenc_h264_encoder_deps="nvenc" nvenc_hevc_encoder_deps="nvenc" # demuxers / muxers diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c index e8737051f2..4cc93aae47 100644 --- a/libavcodec/allcodecs.c +++ b/libavcodec/allcodecs.c @@ -236,6 +236,7 @@ void avcodec_register_all(void) REGISTER_DECODER(MXPEG, mxpeg); REGISTER_DECODER(NUV, nuv); REGISTER_ENCODER(NVENC, nvenc); + REGISTER_ENCODER(NVENC_H264, nvenc_h264); REGISTER_ENCODER(NVENC_HEVC, nvenc_hevc); REGISTER_DECODER(PAF_VIDEO, paf_video); REGISTER_ENCDEC (PAM, pam); diff --git a/libavcodec/nvenc.c b/libavcodec/nvenc.c index 246f6a178b..87ce6f35cb 100644 --- a/libavcodec/nvenc.c +++ b/libavcodec/nvenc.c @@ -1427,6 +1427,31 @@ AVCodec ff_nvenc_encoder = { }; #endif +/* Add an alias for nvenc_h264 */ +#if CONFIG_NVENC_H264_ENCODER +static const AVClass nvenc_h264_class = { + .class_name = "nvenc_h264", + .item_name = av_default_item_name, + .option = options, + .version = LIBAVUTIL_VERSION_INT, +}; + +AVCodec ff_nvenc_h264_encoder = { + .name = "nvenc_h264", + .long_name = NULL_IF_CONFIG_SMALL("Nvidia NVENC h264 encoder"), + .type = AVMEDIA_TYPE_VIDEO, + .id = AV_CODEC_ID_H264, + .priv_data_size = sizeof(NvencContext), + .init = nvenc_encode_init, + .encode2 = nvenc_encode_frame, + .close = nvenc_encode_close, + .capabilities = CODEC_CAP_DELAY, + .priv_class = &nvenc_h264_class, + .defaults = nvenc_defaults, + .pix_fmts = pix_fmts_nvenc, +}; +#endif + #if CONFIG_NVENC_HEVC_ENCODER static const AVClass nvenc_hevc_class = { .class_name = "nvenc_hevc", |