xine-lib  1.2.9
Data Structures | Macros | Functions
dpb.h File Reference
#include "nal.h"
#include "cpb.h"
#include <xine/video_out.h>
#include <xine/list.h>

Go to the source code of this file.

Data Structures

struct  decoded_picture
 
struct  dpb
 

Macros

#define MAX_DPB_COUNT   16
 
#define USED_FOR_REF   (top_is_reference || bottom_is_reference)
 

Functions

static struct decoded_pictureinit_decoded_picture (struct coded_picture *cpic, vo_frame_t *img)
 
static void release_decoded_picture (struct decoded_picture *pic)
 
static void lock_decoded_picture (struct decoded_picture *pic)
 
static void decoded_pic_check_reference (struct decoded_picture *pic)
 
static void decoded_pic_add_field (struct decoded_picture *pic, struct coded_picture *cpic)
 
static struct dpbcreate_dpb (void)
 
static void release_dpb (struct dpb *dpb)
 
static int dpb_total_frames (struct dpb *dpb)
 
static struct decoded_picturedpb_get_next_out_picture (struct dpb *dpb, int do_flush)
 
static struct decoded_picturedpb_get_picture (struct dpb *dpb, uint32_t picnum)
 
static struct decoded_picturedpb_get_picture_by_ltpn (struct dpb *dpb, uint32_t longterm_picnum)
 
static struct decoded_picturedpb_get_picture_by_ltidx (struct dpb *dpb, uint32_t longterm_idx)
 
static int dpb_set_unused_ref_picture_byltpn (struct dpb *dpb, uint32_t longterm_picnum)
 
static int dpb_set_unused_ref_picture_bylidx (struct dpb *dpb, uint32_t longterm_idx)
 
static int dpb_set_unused_ref_picture_lidx_gt (struct dpb *dpb, int32_t longterm_idx)
 
static int dpb_unmark_picture_delayed (struct dpb *dpb, struct decoded_picture *pic)
 
static int dpb_unmark_reference_picture (struct dpb *dpb, struct decoded_picture *pic)
 
static int dpb_add_picture (struct dpb *dpb, struct decoded_picture *pic, uint32_t num_ref_frames)
 
static int dpb_flush (struct dpb *dpb)
 
static void dpb_free_all (struct dpb *dpb)
 
static void dpb_clear_all_pts (struct dpb *dpb)
 
static int fill_vdpau_reference_list (struct dpb *dpb, VdpReferenceFrameH264 *reflist)
 
static int dp_top_field_first (struct decoded_picture *decoded_pic)
 

Macro Definition Documentation

◆ MAX_DPB_COUNT

#define MAX_DPB_COUNT   16

Referenced by create_dpb().

◆ USED_FOR_REF

#define USED_FOR_REF   (top_is_reference || bottom_is_reference)

Function Documentation

◆ create_dpb()

static struct dpb* create_dpb ( void  )
static

◆ decoded_pic_add_field()

static void decoded_pic_add_field ( struct decoded_picture pic,
struct coded_picture cpic 
)
static

◆ decoded_pic_check_reference()

static void decoded_pic_check_reference ( struct decoded_picture pic)
static

◆ dp_top_field_first()

static int dp_top_field_first ( struct decoded_picture decoded_pic)
static

◆ dpb_add_picture()

static int dpb_add_picture ( struct dpb dpb,
struct decoded_picture pic,
uint32_t  num_ref_frames 
)
static

◆ dpb_clear_all_pts()

static void dpb_clear_all_pts ( struct dpb dpb)
static

◆ dpb_flush()

static int dpb_flush ( struct dpb dpb)
static

◆ dpb_free_all()

static void dpb_free_all ( struct dpb dpb)
static

◆ dpb_get_next_out_picture()

static struct decoded_picture* dpb_get_next_out_picture ( struct dpb dpb,
int  do_flush 
)
static

◆ dpb_get_picture()

static struct decoded_picture* dpb_get_picture ( struct dpb dpb,
uint32_t  picnum 
)
static

◆ dpb_get_picture_by_ltidx()

static struct decoded_picture* dpb_get_picture_by_ltidx ( struct dpb dpb,
uint32_t  longterm_idx 
)
static

◆ dpb_get_picture_by_ltpn()

static struct decoded_picture* dpb_get_picture_by_ltpn ( struct dpb dpb,
uint32_t  longterm_picnum 
)
static

◆ dpb_set_unused_ref_picture_bylidx()

static int dpb_set_unused_ref_picture_bylidx ( struct dpb dpb,
uint32_t  longterm_idx 
)
static

◆ dpb_set_unused_ref_picture_byltpn()

static int dpb_set_unused_ref_picture_byltpn ( struct dpb dpb,
uint32_t  longterm_picnum 
)
static

◆ dpb_set_unused_ref_picture_lidx_gt()

static int dpb_set_unused_ref_picture_lidx_gt ( struct dpb dpb,
int32_t  longterm_idx 
)
static

◆ dpb_total_frames()

static int dpb_total_frames ( struct dpb dpb)
static

calculates the total number of frames in the dpb when frames are used for reference and are not drawn yet the result would be less then reference_list-size+ output_list-size

◆ dpb_unmark_picture_delayed()

static int dpb_unmark_picture_delayed ( struct dpb dpb,
struct decoded_picture pic 
)
static

◆ dpb_unmark_reference_picture()

static int dpb_unmark_reference_picture ( struct dpb dpb,
struct decoded_picture pic 
)
static

◆ fill_vdpau_reference_list()

static int fill_vdpau_reference_list ( struct dpb dpb,
VdpReferenceFrameH264 *  reflist 
)
static

◆ init_decoded_picture()

static struct decoded_picture* init_decoded_picture ( struct coded_picture cpic,
vo_frame_t img 
)
static

◆ lock_decoded_picture()

static void lock_decoded_picture ( struct decoded_picture pic)
static

◆ release_decoded_picture()

static void release_decoded_picture ( struct decoded_picture pic)
static

◆ release_dpb()

static void release_dpb ( struct dpb dpb)
static