|
libxcoder
5.3.1
|
#include "ni_device_api.h"#include "ni_av_codec.h"#include "ni_bitstream.h"#include "ni_generic_utils.h"#include "ni_filter_utils.h"Go to the source code of this file.
Data Structures | |
| struct | dec_send_param |
| struct | dec_recv_param |
| struct | _ni_h264_sps_t |
| struct | _ni_h265_window_t |
| struct | VUI |
| struct | PTLCommon |
| struct | PTL |
| struct | ScalingList |
| struct | ShortTermRPS |
| struct | _ni_h265_sps_t |
| struct | _ni_vp9_header_info |
Typedefs | |
| typedef struct dec_send_param | dec_send_param_t |
| typedef struct dec_recv_param | dec_recv_param_t |
| typedef struct _ni_h264_sps_t | ni_h264_sps_t |
| typedef struct _ni_h265_window_t | ni_h265_window_t |
| typedef struct VUI | VUI |
| typedef struct PTLCommon | PTLCommon |
| typedef struct PTL | PTL |
| typedef struct ScalingList | ScalingList |
| typedef struct ShortTermRPS | ShortTermRPS |
| typedef struct _ni_h265_sps_t | ni_h265_sps_t |
| typedef struct _ni_vp9_header_info | ni_vp9_header_info_t |
| typedef enum _ni_nalu_type | ni_nalu_type_t |
| typedef enum _ni_hevc_nalu_type | ni_hevc_nalu_type |
Enumerations | |
| enum | _ni_nalu_type { H264_NAL_UNSPECIFIED = 0, H264_NAL_SLICE = 1, H264_NAL_DPA = 2, H264_NAL_DPB = 3, H264_NAL_DPC = 4, H264_NAL_IDR_SLICE = 5, H264_NAL_SEI = 6, H264_NAL_SPS = 7, H264_NAL_PPS = 8, H264_NAL_AUD = 9, H264_NAL_END_SEQUENCE = 10, H264_NAL_END_STREAM = 11, H264_NAL_FILLER_DATA = 12, H264_NAL_SPS_EXT = 13, H264_NAL_PREFIX = 14, H264_NAL_SUB_SPS = 15, H264_NAL_DPS = 16, H264_NAL_AUXILIARY_SLICE = 19 } |
| enum | _ni_hevc_nalu_type { HEVC_NAL_TRAIL_N = 0, HEVC_NAL_TRAIL_R = 1, HEVC_NAL_TSA_N = 2, HEVC_NAL_TSA_R = 3, HEVC_NAL_STSA_N = 4, HEVC_NAL_STSA_R = 5, HEVC_NAL_RADL_N = 6, HEVC_NAL_RADL_R = 7, HEVC_NAL_RASL_N = 8, HEVC_NAL_RASL_R = 9, HEVC_NAL_IDR_W_RADL = 19, HEVC_NAL_IDR_N_LP = 20, HEVC_NAL_CRA_NUT = 21, HEVC_NAL_VPS = 32, HEVC_NAL_SPS = 33, HEVC_NAL_PPS = 34, HEVC_NAL_AUD = 35, HEVC_NAL_EOS_NUT = 36, HEVC_NAL_EOB_NUT = 37, HEVC_NAL_FD_NUT = 38, HEVC_NAL_SEI_PREFIX = 39, HEVC_NAL_SEI_SUFFIX = 40 } |
Functions | |
| uint64_t | find_h264_next_nalu (ni_demo_context_t *p_ctx, uint8_t *p_dst, int *nal_type) |
| int | h264_parse_hrd (ni_bitstream_reader_t *br, ni_h264_sps_t *sps) |
| int | h264_parse_vui (ni_bitstream_reader_t *br, ni_h264_sps_t *sps) |
| int | h264_parse_scaling_list (ni_bitstream_reader_t *br, uint8_t *factors, int size, const uint8_t *jvt_list, const uint8_t *fallback_list) |
| int | h264_parse_scaling_matrices (ni_bitstream_reader_t *br, const ni_h264_sps_t *sps, uint8_t(*scaling_matrix4)[16], uint8_t(*scaling_matrix8)[64]) |
| int | h264_parse_sps (uint8_t *buf, int size_bytes, ni_h264_sps_t *sps) |
| int | h264_parse_sei (uint8_t *buf, int size_bytes, ni_h264_sps_t *sps, int *sei_type, int *is_interlaced) |
| int | probe_h264_stream_info (ni_demo_context_t *p_ctx, ni_h264_sps_t *sps) |
| int | parse_h264_slice_header (uint8_t *buf, int size_bytes, ni_h264_sps_t *sps, int32_t *frame_num, unsigned int *first_mb_in_slice) |
| uint64_t | find_h265_next_nalu (ni_demo_context_t *p_ctx, uint8_t *p_dst, int *nal_type) |
| void | h265_decode_sublayer_hrd (ni_bitstream_reader_t *br, unsigned int nb_cpb, int subpic_params_present) |
| int | h265_decode_profile_tier_level (ni_bitstream_reader_t *br, PTLCommon *ptl) |
| int | h265_parse_ptl (ni_bitstream_reader_t *br, PTL *ptl, int max_num_sub_layers) |
| int | h265_decode_hrd (ni_bitstream_reader_t *br, int common_inf_present, int max_sublayers) |
| void | h265_set_default_scaling_list_data (ScalingList *sl) |
| int | h265_scaling_list_data (ni_bitstream_reader_t *br, ScalingList *sl, ni_h265_sps_t *sps) |
| int | h265_decode_short_term_rps (ni_bitstream_reader_t *br, ShortTermRPS *rps, const ni_h265_sps_t *sps, int is_slice_header) |
| int | h265_decode_vui (ni_bitstream_reader_t *br, int apply_defdispwin, ni_h265_sps_t *sps) |
| int | h265_parse_sps (ni_h265_sps_t *sps, uint8_t *buf, int size_bytes) |
| int | probe_h265_stream_info (ni_demo_context_t *p_ctx, ni_h265_sps_t *sps) |
| uint64_t | find_vp9_next_packet (ni_demo_context_t *p_ctx, uint8_t *p_dst, ni_vp9_header_info_t *vp9_info) |
| int | vp9_parse_header (ni_vp9_header_info_t *vp9_info, uint8_t *buf, int size_bytes) |
| int | probe_vp9_stream_info (ni_demo_context_t *p_ctx, ni_vp9_header_info_t *vp9_info) |
| int | decoder_send_data (ni_demo_context_t *p_ctx, ni_session_context_t *p_dec_ctx, ni_session_data_io_t *p_in_data, int input_video_width, int input_video_height, void *stream_info) |
| Send decoder input data. More... | |
| int | decoder_receive_data (ni_demo_context_t *p_ctx, ni_session_context_t *p_dec_ctx, ni_session_data_io_t *p_out_data, int output_video_width, int output_video_height, FILE *p_file, int write_to_file, int *p_rx_size) |
| Receive decoded output data from decoder. More... | |
| int | decoder_open_session (ni_session_context_t *p_dec_ctx, int iXcoderGUID, ni_xcoder_params_t *p_dec_params) |
| decoder session open More... | |
| void | decoder_stat_report_and_close (ni_demo_context_t *p_ctx, ni_session_context_t *p_dec_ctx) |
| void * | decoder_send_thread (void *args) |
| void * | decoder_receive_thread (void *args) |
| typedef struct dec_recv_param dec_recv_param_t |
| typedef struct dec_send_param dec_send_param_t |
| typedef struct _ni_h264_sps_t ni_h264_sps_t |
Sequence parameter set
| typedef struct _ni_h265_sps_t ni_h265_sps_t |
HEVC Sequence parameter set
| typedef struct _ni_h265_window_t ni_h265_window_t |
| typedef enum _ni_hevc_nalu_type ni_hevc_nalu_type |
| typedef enum _ni_nalu_type ni_nalu_type_t |
| typedef struct _ni_vp9_header_info ni_vp9_header_info_t |
| typedef struct ScalingList ScalingList |
| typedef struct ShortTermRPS ShortTermRPS |
| enum _ni_hevc_nalu_type |
Definition at line 375 of file ni_decode_utils.h.
| enum _ni_nalu_type |
Definition at line 353 of file ni_decode_utils.h.
| int decoder_open_session | ( | ni_session_context_t * | p_dec_ctx, |
| int | iXcoderGUID, | ||
| ni_xcoder_params_t * | p_dec_params | ||
| ) |
| int decoder_receive_data | ( | ni_demo_context_t * | p_ctx, |
| ni_session_context_t * | p_dec_ctx, | ||
| ni_session_data_io_t * | p_out_data, | ||
| int | output_video_width, | ||
| int | output_video_height, | ||
| FILE * | p_file, | ||
| int | write_to_file, | ||
| int * | p_rx_size | ||
| ) |
Receive decoded output data from decoder.
Definition at line 2416 of file ni_decode_utils.c.
| void* decoder_receive_thread | ( | void * | args | ) |
Definition at line 2678 of file ni_decode_utils.c.
| int decoder_send_data | ( | ni_demo_context_t * | p_ctx, |
| ni_session_context_t * | p_dec_ctx, | ||
| ni_session_data_io_t * | p_in_data, | ||
| int | input_video_width, | ||
| int | input_video_height, | ||
| void * | stream_info | ||
| ) |
| void* decoder_send_thread | ( | void * | args | ) |
Definition at line 2626 of file ni_decode_utils.c.
| void decoder_stat_report_and_close | ( | ni_demo_context_t * | p_ctx, |
| ni_session_context_t * | p_dec_ctx | ||
| ) |
Definition at line 2612 of file ni_decode_utils.c.
| uint64_t find_h264_next_nalu | ( | ni_demo_context_t * | p_ctx, |
| uint8_t * | p_dst, | ||
| int * | nal_type | ||
| ) |
Definition at line 104 of file ni_decode_utils.c.
| uint64_t find_h265_next_nalu | ( | ni_demo_context_t * | p_ctx, |
| uint8_t * | p_dst, | ||
| int * | nal_type | ||
| ) |
find/copy next H.265 NAL unit (including start code) and its type; return NAL data size if found, 0 otherwise
Definition at line 883 of file ni_decode_utils.c.
| uint64_t find_vp9_next_packet | ( | ni_demo_context_t * | p_ctx, |
| uint8_t * | p_dst, | ||
| ni_vp9_header_info_t * | vp9_info | ||
| ) |
packet structure: bytes 0-3: size of frame in bytes (not including the 12-byte header) bytes 4-11: 64-bit presentation timestamp bytes 12.. frame data
Definition at line 2074 of file ni_decode_utils.c.
| int h264_parse_hrd | ( | ni_bitstream_reader_t * | br, |
| ni_h264_sps_t * | sps | ||
| ) |
Definition at line 174 of file ni_decode_utils.c.
| int h264_parse_scaling_list | ( | ni_bitstream_reader_t * | br, |
| uint8_t * | factors, | ||
| int | size, | ||
| const uint8_t * | jvt_list, | ||
| const uint8_t * | fallback_list | ||
| ) |
Definition at line 338 of file ni_decode_utils.c.
| int h264_parse_scaling_matrices | ( | ni_bitstream_reader_t * | br, |
| const ni_h264_sps_t * | sps, | ||
| uint8_t(*) | scaling_matrix4[16], | ||
| uint8_t(*) | scaling_matrix8[64] | ||
| ) |
Definition at line 374 of file ni_decode_utils.c.
| int h264_parse_sei | ( | uint8_t * | buf, |
| int | size_bytes, | ||
| ni_h264_sps_t * | sps, | ||
| int * | sei_type, | ||
| int * | is_interlaced | ||
| ) |
Definition at line 623 of file ni_decode_utils.c.
| int h264_parse_sps | ( | uint8_t * | buf, |
| int | size_bytes, | ||
| ni_h264_sps_t * | sps | ||
| ) |
Definition at line 420 of file ni_decode_utils.c.
| int h264_parse_vui | ( | ni_bitstream_reader_t * | br, |
| ni_h264_sps_t * | sps | ||
| ) |
Definition at line 203 of file ni_decode_utils.c.
| int h265_decode_hrd | ( | ni_bitstream_reader_t * | br, |
| int | common_inf_present, | ||
| int | max_sublayers | ||
| ) |
Definition at line 1087 of file ni_decode_utils.c.
| int h265_decode_profile_tier_level | ( | ni_bitstream_reader_t * | br, |
| PTLCommon * | ptl | ||
| ) |
Definition at line 971 of file ni_decode_utils.c.
| int h265_decode_short_term_rps | ( | ni_bitstream_reader_t * | br, |
| ShortTermRPS * | rps, | ||
| const ni_h265_sps_t * | sps, | ||
| int | is_slice_header | ||
| ) |
Definition at line 1277 of file ni_decode_utils.c.
| void h265_decode_sublayer_hrd | ( | ni_bitstream_reader_t * | br, |
| unsigned int | nb_cpb, | ||
| int | subpic_params_present | ||
| ) |
Definition at line 952 of file ni_decode_utils.c.
| int h265_decode_vui | ( | ni_bitstream_reader_t * | br, |
| int | apply_defdispwin, | ||
| ni_h265_sps_t * | sps | ||
| ) |
Definition at line 1440 of file ni_decode_utils.c.
| int h265_parse_ptl | ( | ni_bitstream_reader_t * | br, |
| PTL * | ptl, | ||
| int | max_num_sub_layers | ||
| ) |
Definition at line 1041 of file ni_decode_utils.c.
| int h265_parse_sps | ( | ni_h265_sps_t * | sps, |
| uint8_t * | buf, | ||
| int | size_bytes | ||
| ) |
Definition at line 1611 of file ni_decode_utils.c.
| int h265_scaling_list_data | ( | ni_bitstream_reader_t * | br, |
| ScalingList * | sl, | ||
| ni_h265_sps_t * | sps | ||
| ) |
Definition at line 1190 of file ni_decode_utils.c.
| void h265_set_default_scaling_list_data | ( | ScalingList * | sl | ) |
Definition at line 1159 of file ni_decode_utils.c.
| int parse_h264_slice_header | ( | uint8_t * | buf, |
| int | size_bytes, | ||
| ni_h264_sps_t * | sps, | ||
| int32_t * | frame_num, | ||
| unsigned int * | first_mb_in_slice | ||
| ) |
Definition at line 831 of file ni_decode_utils.c.
| int probe_h264_stream_info | ( | ni_demo_context_t * | p_ctx, |
| ni_h264_sps_t * | sps | ||
| ) |
Definition at line 715 of file ni_decode_utils.c.
| int probe_h265_stream_info | ( | ni_demo_context_t * | p_ctx, |
| ni_h265_sps_t * | sps | ||
| ) |
Definition at line 1994 of file ni_decode_utils.c.
| int probe_vp9_stream_info | ( | ni_demo_context_t * | p_ctx, |
| ni_vp9_header_info_t * | vp9_info | ||
| ) |
Definition at line 2180 of file ni_decode_utils.c.
| int vp9_parse_header | ( | ni_vp9_header_info_t * | vp9_info, |
| uint8_t * | buf, | ||
| int | size_bytes | ||
| ) |
Definition at line 2117 of file ni_decode_utils.c.