FFmpeg
|
#include "config.h"
#include "nvenc.h"
#include "libavutil/hwcontext_cuda.h"
#include "libavutil/hwcontext.h"
#include "libavutil/cuda_check.h"
#include "libavutil/imgutils.h"
#include "libavutil/avassert.h"
#include "libavutil/mem.h"
#include "libavutil/pixdesc.h"
#include "internal.h"
#include "packet_internal.h"
Go to the source code of this file.
Data Structures | |
struct | GUIDTuple |
Macros | |
#define | CHECK_CU(x) FF_CUDA_CHECK_DL(avctx, dl_fn->cuda_dl, x) |
#define | NVENC_CAP 0x30 |
#define | IS_CBR(rc) |
#define | IS_10BIT(pix_fmt) |
#define | IS_YUV444(pix_fmt) |
#define | PRESET_ALIAS(alias, name, ...) [PRESET_ ## alias] = { NV_ENC_PRESET_ ## name ## _GUID, __VA_ARGS__ } |
#define | PRESET(name, ...) PRESET_ALIAS(name, name, __VA_ARGS__) |
Variables | |
enum AVPixelFormat | ff_nvenc_pix_fmts [] |
const AVCodecHWConfigInternal * | ff_nvenc_hw_configs [] |
struct { | |
NVENCSTATUS nverr | |
int averr | |
const char * desc | |
} | nvenc_errors [] |
#define CHECK_CU | ( | x | ) | FF_CUDA_CHECK_DL(avctx, dl_fn->cuda_dl, x) |
#define IS_CBR | ( | rc | ) |
#define IS_10BIT | ( | pix_fmt | ) |
#define IS_YUV444 | ( | pix_fmt | ) |
#define PRESET | ( | name, | |
... | |||
) | PRESET_ALIAS(name, name, __VA_ARGS__) |
|
static |
Definition at line 109 of file nvenc.c.
Referenced by nvenc_print_error().
|
static |
Definition at line 124 of file nvenc.c.
Referenced by ff_nvenc_send_frame(), nvenc_alloc_surface(), nvenc_find_free_reg_resource(), nvenc_load_libraries(), nvenc_open_session(), nvenc_register_frame(), nvenc_setup_encoder(), nvenc_setup_extradata(), nvenc_upload_frame(), process_output_surface(), and reconfig_encoder().
|
static |
Definition at line 144 of file nvenc.c.
Referenced by nvenc_load_libraries().
|
static |
Definition at line 182 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
|
static |
Definition at line 226 of file nvenc.c.
Referenced by ff_nvenc_encode_close(), ff_nvenc_receive_packet(), ff_nvenc_send_frame(), nvenc_check_device(), nvenc_setup_encoder(), and nvenc_setup_surfaces().
|
static |
Definition at line 237 of file nvenc.c.
Referenced by ff_nvenc_encode_close(), ff_nvenc_receive_packet(), ff_nvenc_send_frame(), nvenc_check_device(), nvenc_setup_encoder(), and nvenc_setup_surfaces().
|
static |
Definition at line 249 of file nvenc.c.
Referenced by nvenc_check_device(), and nvenc_setup_device().
|
static |
Definition at line 275 of file nvenc.c.
Referenced by nvenc_check_capabilities().
|
static |
Definition at line 311 of file nvenc.c.
Referenced by nvenc_check_capabilities().
|
static |
Definition at line 328 of file nvenc.c.
Referenced by nvenc_check_device(), and nvenc_setup_device().
|
static |
Definition at line 445 of file nvenc.c.
Referenced by nvenc_setup_device().
|
static |
Definition at line 520 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
|
static |
Definition at line 636 of file nvenc.c.
Referenced by nvenc_setup_encoder().
|
static |
Definition at line 662 of file nvenc.c.
Referenced by nvenc_override_rate_control().
|
static |
Definition at line 695 of file nvenc.c.
Referenced by nvenc_override_rate_control(), and nvenc_setup_rate_control().
|
static |
Definition at line 757 of file nvenc.c.
Referenced by nvenc_setup_rate_control().
|
static |
Definition at line 771 of file nvenc.c.
Referenced by nvenc_setup_rate_control().
|
static |
Definition at line 802 of file nvenc.c.
Referenced by nvenc_setup_encoder().
|
static |
Definition at line 841 of file nvenc.c.
Referenced by nvenc_setup_encoder().
|
static |
Definition at line 965 of file nvenc.c.
Referenced by nvenc_setup_codec_config().
|
static |
Definition at line 1062 of file nvenc.c.
Referenced by nvenc_setup_codec_config().
|
static |
Definition at line 1151 of file nvenc.c.
Referenced by nvenc_setup_encoder().
|
static |
Definition at line 1164 of file nvenc.c.
Referenced by nvenc_setup_encoder(), and reconfig_encoder().
|
static |
Definition at line 1178 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
|
static |
Definition at line 1313 of file nvenc.c.
Referenced by nvenc_alloc_surface(), and nvenc_register_frame().
|
static |
Definition at line 1336 of file nvenc.c.
Referenced by nvenc_setup_surfaces().
|
static |
Definition at line 1393 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
|
static |
Definition at line 1434 of file nvenc.c.
Referenced by ff_nvenc_encode_init().
av_cold int ff_nvenc_encode_close | ( | AVCodecContext * | avctx | ) |
av_cold int ff_nvenc_encode_init | ( | AVCodecContext * | avctx | ) |
Definition at line 1542 of file nvenc.c.
Referenced by nvenc_old_init().
|
static |
Definition at line 1585 of file nvenc.c.
Referenced by ff_nvenc_send_frame().
|
static |
Definition at line 1597 of file nvenc.c.
Referenced by nvenc_upload_frame().
|
static |
Definition at line 1627 of file nvenc.c.
Referenced by nvenc_register_frame().
|
static |
Definition at line 1661 of file nvenc.c.
Referenced by nvenc_upload_frame().
|
static |
Definition at line 1715 of file nvenc.c.
Referenced by ff_nvenc_send_frame().
|
static |
Definition at line 1777 of file nvenc.c.
Referenced by ff_nvenc_send_frame().
|
inlinestatic |
Definition at line 1809 of file nvenc.c.
Referenced by ff_nvenc_send_frame().
|
inlinestatic |
Definition at line 1814 of file nvenc.c.
Referenced by nvenc_set_timestamp(), and process_output_surface().
|
static |
Definition at line 1823 of file nvenc.c.
Referenced by process_output_surface().
|
static |
Definition at line 1837 of file nvenc.c.
Referenced by ff_nvenc_receive_packet().
|
static |
Definition at line 1966 of file nvenc.c.
Referenced by ff_nvenc_receive_packet().
|
static |
Definition at line 1978 of file nvenc.c.
Referenced by ff_nvenc_send_frame().
int ff_nvenc_send_frame | ( | AVCodecContext * | avctx, |
const AVFrame * | frame | ||
) |
Definition at line 2070 of file nvenc.c.
Referenced by ff_nvenc_encode_flush(), and ff_nvenc_encode_frame().
int ff_nvenc_receive_packet | ( | AVCodecContext * | avctx, |
AVPacket * | pkt | ||
) |
Definition at line 2190 of file nvenc.c.
Referenced by ff_nvenc_encode_frame().
int ff_nvenc_encode_frame | ( | AVCodecContext * | avctx, |
AVPacket * | pkt, | ||
const AVFrame * | frame, | ||
int * | got_packet | ||
) |
av_cold void ff_nvenc_encode_flush | ( | AVCodecContext * | avctx | ) |
enum AVPixelFormat ff_nvenc_pix_fmts[] |
const AVCodecHWConfigInternal* ff_nvenc_hw_configs[] |
NVENCSTATUS nverr |
Definition at line 77 of file nvenc.c.
Referenced by nvenc_map_error().
const char* desc |
Definition at line 79 of file nvenc.c.
Referenced by any_vscale(), asf_read_picture(), asf_write_header1(), av_bsf_init(), av_frame_apply_cropping(), av_image_alloc(), av_image_copy_to_buffer(), av_image_fill_black(), av_image_fill_linesizes(), av_image_fill_pointers(), av_image_get_buffer_size(), av_image_get_linesize(), av_picture_crop(), av_picture_pad(), av_pix_fmt_count_planes(), av_pix_fmt_desc_get_id(), av_pix_fmt_get_chroma_sub_sample(), av_pix_fmt_swap_endianness(), av_read_image_line(), av_read_image_line2(), av_write_image_line(), av_write_image_line2(), avcodec_align_dimensions(), avcodec_align_dimensions2(), avcodec_default_get_format(), avcodec_descriptor_get_by_name(), avcodec_get_chroma_sub_sample(), avcodec_get_type(), avcodec_profile_name(), calc_cropping_offsets(), check_image_pointers(), choose_pixel_fmt(), choose_sample_fmt(), chr_convert(), chr_h_scale(), chr_planar_vscale(), config_input(), config_input0(), config_input1(), config_input_main(), config_input_ref(), config_inputx(), config_inputy(), config_out_props(), config_output(), config_props(), config_props_output(), copy_picture_field(), copy_uv_planes(), count_ports(), create_all_formats(), create_frame(), d3d11va_device_create(), d3d11va_get_buffer(), d3d11va_transfer_data(), decode(), decode_frame(), descriptor_compare(), deshake_opencl_init(), drm_map_frame(), encode_frame(), encode_init(), ff_all_formats(), ff_boxblur_eval_filter_params(), ff_color_frame(), ff_draw_color(), ff_draw_horiz_band(), ff_draw_init(), ff_flac_parse_picture(), ff_formats_pixdesc_filter(), ff_frame_pool_get(), ff_frame_pool_video_init(), ff_get_format(), ff_guess_coded_bitrate(), ff_h264_draw_horiz_band(), ff_id3v2_write_apic(), ff_init_desc_cfmt_convert(), ff_init_desc_chscale(), ff_init_desc_fmt_convert(), ff_init_desc_hscale(), ff_init_desc_no_chr(), ff_init_gamma_convert(), ff_init_vscale(), ff_mediacodec_dec_init(), ff_scale_eval_dimensions(), ff_sws_alphablendaway(), ff_sws_init_output_funcs(), ff_vk_add_descriptor_set(), ff_vk_shader_rep_fmt(), ff_vmafmotion_init(), fill_frameinfo_by_link(), fill_texture_ptrs(), filter_frame(), find_codec_or_die(), flac_write_picture(), flush_encoders(), format_init(), frame_end(), gamma_convert(), geq_config_props(), get_aspect_ratio(), get_bit_depth(), get_codecs_sorted(), get_color_type(), get_deinterleaved_format(), get_format(), get_mimetype(), get_pix_fmt_depth(), get_video_buffer(), h264_metadata_update_sps(), h265_metadata_guess_level(), handle_connect_error(), have_alpha_planar(), hScale16To15_c(), hScale16To19_c(), hwmap_config_output(), image_copy(), image_copy_16_to_8(), image_get_linesize(), init(), init_filter(), init_image(), init_muxer(), init_sec_buffer_desc(), init_video_param(), init_video_param_jpeg(), is16BPS(), is32BPS(), is_planar_yuv(), is_yuv_planar(), isALPHA(), isAnyRGB(), isBayer(), isBE(), isFloat(), isGray(), isNBPS(), isPacked(), isPackedRGB(), isPlanar(), isPlanarRGB(), isPlanarYUV(), isRGB(), isSemiPlanarYUV(), isYUV(), kmsgrab_free_desc(), kmsgrab_read_packet(), libopenjpeg_copy_to_packed16(), libopenjpeg_copyto16(), libopenjpeg_decode_frame(), libopenjpeg_ispacked(), libopenjpeg_matches_pix_fmt(), librav1e_encode_init(), librav1e_send_frame(), list_formats(), log_encoder_error(), lum_convert(), lum_h_scale(), lum_planar_vscale(), lut2_config_output(), main(), map_pixel_format(), mj2_create_image(), nlmeans_opencl_filter_frame(), no_chr_scale(), nvenc_map_error(), nvenc_print_error(), opencl_frames_uninit(), opencl_get_buffer(), opencl_get_plane_format(), opencl_pool_alloc(), opencl_pool_free(), opengl_draw(), opengl_fill_color_map(), opengl_get_plane_pointer(), opengl_init_context(), packed_vscale(), pad_opencl_init(), pix_fmt_match(), prepare_sws_context(), print_codecs(), print_digraph(), qsv_init_surface(), qsv_map_from(), query_formats(), raw_decode(), raw_encode_init(), raw_init_decoder(), read_gab2_sub(), read_packet_vs(), realign_frame(), rgb48Toxyz12(), rkmpp_release_frame(), rkmpp_retrieve_frame(), rv10_write_header(), scale_eval_dimensions(), scale_frame(), set_aes_arg(), set_dimensions(), set_format(), set_string_fmt(), show_codecs(), show_help_codec(), show_help_muxer(), smv_img_pnt(), smvjpeg_decode_frame(), swscale(), tiff_unpack_strip(), tonemap(), tonemap_slice(), transcode_init(), transfer_image_buf(), unsharp_opencl_make_filter_params(), unsupported_codec(), v4l2_buffer_swframe_to_buf(), v4l2_encode_init(), v4l2_read_header(), vaapi_encode_h265_init_sequence_params(), vaapi_encode_mjpeg_init_picture_params(), vaapi_encode_profile_entrypoint(), vaapi_frames_init(), vaapi_map_frame(), vaapi_pix_fmt_from_fourcc(), vaapi_vpp_frame_is_rgb(), validate_avframe_allocation(), verify_md5(), video_frame_cksum(), video_get_buffer(), wrap_texture_buf(), write_header(), write_packet(), xwd_encode_frame(), xyz12Torgb48(), yuv2gbrp16_full_X_c(), yuv2gbrp_full_X_c(), and yuv2gbrpf32_full_X_c().
const { ... } nvenc_errors[] |
Referenced by nvenc_map_error().