|
xine-lib
1.2.9
|
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/types.h>#include <unistd.h>#include <vdpau/vdpau.h>#include <xine/xine_internal.h>#include <xine/video_out.h>#include <xine/buffer.h>#include <xine/xineutils.h>#include "bswap.h"#include "accel_vdpau.h"#include "h264_parser.h"#include "dpb.h"#include "cpb.h"#include "dpb.c"#include "cpb.c"#include "nal.c"#include "h264_parser.c"#include "group_vdpau.h"Data Structures | |
| struct | vdpau_h264_class_t |
| struct | vdpau_h264_decoder_s |
Macros | |
| #define | LOG_MODULE "vdpau_h264" |
| #define | VIDEOBUFSIZE 128*1024 |
Typedefs | |
| typedef struct vdpau_h264_decoder_s | vdpau_h264_decoder_t |
Functions | |
| static void | vdpau_h264_reset (video_decoder_t *this_gen) |
| static void | vdpau_h264_flush (video_decoder_t *this_gen) |
| static void | set_ratio (video_decoder_t *this_gen) |
| static void | fill_vdpau_pictureinfo_h264 (video_decoder_t *this_gen, uint32_t slice_count, VdpPictureInfoH264 *pic) |
| static int | check_progressive (video_decoder_t *this_gen, struct decoded_picture *dpic) |
| static int | vdpau_decoder_init (video_decoder_t *this_gen) |
| static void | draw_frames (video_decoder_t *this_gen, int flush) |
| static int | vdpau_decoder_render (video_decoder_t *this_gen, VdpBitstreamBuffer *vdp_buffer, uint32_t slice_count) |
| static void | vdpau_h264_decode_data (video_decoder_t *this_gen, buf_element_t *buf) |
| static void | vdpau_h264_discontinuity (video_decoder_t *this_gen) |
| static void | vdpau_h264_dispose (video_decoder_t *this_gen) |
| static video_decoder_t * | open_plugin (video_decoder_class_t *class_gen, xine_stream_t *stream) |
| void * | h264_init_plugin (xine_t *xine, void *data) |
| #define LOG_MODULE "vdpau_h264" |
| #define VIDEOBUFSIZE 128*1024 |
| typedef struct vdpau_h264_decoder_s vdpau_h264_decoder_t |
|
static |
References decoded_picture::coded_pic, slice_header::delta_pic_order_cnt_bottom, DISP_BOTTOM_TOP, DISP_FRAME, DISP_TOP_BOTTOM, slice_header::field_pic_flag, coded_picture::flag_mask, seq_parameter_set_rbsp::frame_mbs_only_flag, NULL, pic_parameter_set_rbsp::pic_order_present_flag, sei_message::pic_struct, PIC_STRUCT_PRESENT, sei_message::pic_timing, nal_unit::pps, coded_picture::pps_nal, nal_unit::sei, coded_picture::sei_nal, nal_unit::slc, coded_picture::slc_nal, nal_unit::sps, and coded_picture::sps_nal.
Referenced by draw_frames().
|
static |
References check_progressive(), dp_top_field_first(), dpb_get_next_out_picture(), dpb_unmark_picture_delayed(), vo_frame_s::draw, decoded_picture::img, NULL, vo_frame_s::progressive_frame, vo_frame_s::pts, vo_frame_s::stream, vo_frame_s::top_field_first, XINE_VERBOSITY_DEBUG, and xprintf.
Referenced by vdpau_decoder_render(), and vdpau_h264_flush().
|
static |
References slice_header::bottom_field_flag, pic_parameter_set_rbsp::chroma_qp_index_offset, pic_parameter_set_rbsp::constrained_intra_pred_flag, pic_parameter_set_rbsp::deblocking_filter_control_present_flag, seq_parameter_set_rbsp::delta_pic_order_always_zero_flag, seq_parameter_set_rbsp::direct_8x8_inference_flag, pic_parameter_set_rbsp::entropy_coding_mode_flag, slice_header::field_pic_flag, fill_vdpau_reference_list(), seq_parameter_set_rbsp::frame_mbs_only_flag, slice_header::frame_num, seq_parameter_set_rbsp::log2_max_frame_num_minus4, seq_parameter_set_rbsp::log2_max_pic_order_cnt_lsb_minus4, seq_parameter_set_rbsp::mb_adaptive_frame_field_flag, seq_parameter_set_rbsp::num_ref_frames, pic_parameter_set_rbsp::num_ref_idx_l0_active_minus1, pic_parameter_set_rbsp::num_ref_idx_l1_active_minus1, pic_parameter_set_rbsp::pic_init_qp_minus26, seq_parameter_set_rbsp::pic_order_cnt_type, pic_parameter_set_rbsp::pic_order_present_flag, pic_parameter_set_rbsp::redundant_pic_cnt_present_flag, REFERENCE, pic_parameter_set_rbsp::scaling_lists_4x4, pic_parameter_set_rbsp::scaling_lists_8x8, pic_parameter_set_rbsp::second_chroma_qp_index_offset, pic_parameter_set_rbsp::transform_8x8_mode_flag, pic_parameter_set_rbsp::weighted_bipred_idc, and pic_parameter_set_rbsp::weighted_pred_flag.
Referenced by vdpau_decoder_render().
| void* h264_init_plugin | ( | xine_t * | xine, |
| void * | data | ||
| ) |
|
static |
References vo_frame_s::accel_data, vo_frame_s::free, xine_video_port_s::get_frame, decoded_picture::img, init_parser(), lprintf, NULL, xine_video_port_s::open, vdpau_h264_decoder_s::stream, vdpau_accel_t::vdp_decoder_create, vdpau_accel_t::vdp_decoder_destroy, vdpau_accel_t::vdp_device, vdpau_accel_t::vdp_runtime_nr, vdpau_h264_decode_data(), vdpau_h264_discontinuity(), vdpau_h264_dispose(), vdpau_h264_flush(), vdpau_h264_reset(), xine_stream_s::video_driver, xine_stream_s::video_out, VO_BOTH_FIELDS, VO_CAP_VDPAU_H264, VO_NEW_SEQUENCE_FLAG, xine_stream_s::xine, and XINE_IMGFMT_VDPAU.
Referenced by h264_init_plugin().
|
static |
References ASPECT_10_11, ASPECT_12_11, ASPECT_15_11, ASPECT_160_99, ASPECT_16_11, ASPECT_18_11, ASPECT_1_1, ASPECT_20_11, ASPECT_24_11, ASPECT_2_1, ASPECT_32_11, ASPECT_3_2, ASPECT_40_33, ASPECT_4_3, ASPECT_64_33, ASPECT_80_33, ASPECT_EXTENDED_SAR, height, and width.
Referenced by vdpau_decoder_init().
|
static |
References _x_meta_info_set_utf8(), _x_stream_info_set(), vo_frame_s::accel_data, xine_format_change_data_t::aspect, vo_frame_s::free, height, xine_format_change_data_t::height, NULL, set_ratio(), VO_BOTH_FIELDS, width, xine_format_change_data_t::width, XINE_EVENT_FRAME_FORMAT_CHANGE, xine_event_send(), XINE_IMGFMT_VDPAU, XINE_META_INFO_VIDEOCODEC, XINE_STREAM_INFO_FRAME_DURATION, XINE_STREAM_INFO_VIDEO_HEIGHT, XINE_STREAM_INFO_VIDEO_RATIO, XINE_STREAM_INFO_VIDEO_WIDTH, XINE_VERBOSITY_LOG, and xprintf.
Referenced by vdpau_h264_decode_data().
|
static |
References vo_frame_s::accel_data, vo_frame_s::bad_frame, CAST_VdpPictureInfo_PTR, seq_parameter_set_rbsp::colour_description_present, decoded_pic_add_field(), dpb_add_picture(), dpb_flush(), dpb_unmark_picture_delayed(), dpb_unmark_reference_picture(), draw_frames(), vo_frame_s::duration, slice_header::field_pic_flag, fill_vdpau_pictureinfo_h264(), free_coded_picture(), IDR_PIC, decoded_picture::img, init_decoded_picture(), lock_decoded_picture(), seq_parameter_set_rbsp::matrix_coefficients, NULL, seq_parameter_set_rbsp::num_ref_frames, seq_parameter_set_rbsp::num_units_in_tick, process_mmc_operations(), vo_frame_s::progressive_frame, vo_frame_s::pts, release_decoded_picture(), vo_frame_s::repeat_first_field, seq_parameter_set_rbsp::time_scale, seq_parameter_set_rbsp::timing_info_present_flag, vdpau_h264_reset(), seq_parameter_set_rbsp::video_full_range_flag, seq_parameter_set_rbsp::video_signal_type_present_flag, VO_BOTH_FIELDS, VO_SET_FLAGS_CM, seq_parameter_set_rbsp::vui_parameters, seq_parameter_set_rbsp::vui_parameters_present_flag, XINE_IMGFMT_VDPAU, XINE_VERBOSITY_DEBUG, XINE_VERBOSITY_LOG, and xprintf.
Referenced by vdpau_h264_decode_data().
|
static |
References _x_stream_info_set(), xine_bmiheader::biHeight, xine_bmiheader::biSize, xine_bmiheader::biWidth, BUF_FLAG_FRAME_END, BUF_FLAG_FRAME_START, BUF_FLAG_FRAMERATE, BUF_FLAG_PREVIEW, BUF_FLAG_SPECIAL, BUF_FLAG_STDHEADER, BUF_SPECIAL_DECODER_CONFIG, BUF_SPECIAL_PALETTE, buf_element_s::content, buf_element_s::decoder_flags, buf_element_s::decoder_info, buf_element_s::decoder_info_ptr, free_coded_picture(), NULL, parse_codec_private(), parse_frame(), buf_element_s::pts, buf_element_s::size, vdpau_decoder_init(), vdpau_decoder_render(), vdpau_h264_flush(), XINE_STREAM_INFO_FRAME_DURATION, XINE_VERBOSITY_DEBUG, XINE_VERBOSITY_LOG, and xprintf.
Referenced by open_plugin().
|
static |
References dpb_clear_all_pts(), and VO_NEW_SEQUENCE_FLAG.
Referenced by open_plugin().
|
static |
References dpb_free_all(), free_parser(), NULL, and release_decoded_picture().
Referenced by open_plugin().
|
static |
References dpb_free_all(), draw_frames(), NULL, release_decoded_picture(), and VO_NEW_SEQUENCE_FLAG.
Referenced by open_plugin(), and vdpau_h264_decode_data().
|
static |
References dpb_free_all(), free_parser(), init_parser(), NULL, parse_codec_private(), release_decoded_picture(), and VO_NEW_SEQUENCE_FLAG.
Referenced by open_plugin(), and vdpau_decoder_render().
1.8.14