#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <math.h>
#include <stdint.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/shm.h>
#include <sys/time.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>
#include <X11/extensions/XShm.h>
#include <X11/extensions/Xv.h>
#include <X11/extensions/Xvlib.h>
#include <X11/extensions/XvMClib.h>
#include "xine.h"
#include <xine/video_out.h>
#include <xine/xine_internal.h>
#include <xine/xineutils.h>
#include <xine/vo_scale.h>
#include "x11osd.h"
#include "accel_xvmc.h"
Go to the source code of this file.
|
void | xvmc_context_reader_unlock (context_lock_t *c) |
|
void | xvmc_context_reader_lock (context_lock_t *c) |
|
int | xxmc_xvmc_surface_valid (xxmc_driver_t *this, XvMCSurface *surf) |
|
void | xvmc_vld_slice (vo_frame_t *this_gen) |
|
void | xvmc_vld_frame (struct vo_frame_s *this_gen) |
|
void | xxmc_xvmc_proc_macro_block (int x, int y, int mb_type, int motion_type, int(*mv_field_sel)[2], int *dmvector, int cbp, int dct_type, vo_frame_t *current_frame, vo_frame_t *forward_ref_frame, vo_frame_t *backward_ref_frame, int picture_structure, int second_field, int(*f_mot_pmv)[2], int(*b_mot_pmv)[2]) |
|
◆ FOURCC_AI44
#define FOURCC_AI44 0x34344941 |
◆ FOURCC_IA44
#define FOURCC_IA44 0x34344149 |
◆ LOCK_AND_SURFACE_VALID
#define LOCK_AND_SURFACE_VALID |
( |
|
driver, |
|
|
|
surface |
|
) |
| |
Value:
xvmc_context_reader_unlock( &(driver)->xvmc_lock ); \
return; \
}
int xxmc_xvmc_surface_valid(xxmc_driver_t *this, XvMCSurface *surf)
Definition: video_out_xxmc.c:269
void xvmc_context_reader_lock(context_lock_t *c)
Definition: video_out_xxmc.c:93
◆ LOG_MODULE
#define LOG_MODULE "video_out_xxmc" |
◆ LOG_VERBOSE
◆ XVMC_MAX_SUBPICTURES
#define XVMC_MAX_SUBPICTURES 4 |
◆ XVMC_MAX_SURFACES
#define XVMC_MAX_SURFACES 16 |
◆ XVMC_THREAD_SAFE
◆ XVMCLOCKDISPLAY
#define XVMCLOCKDISPLAY |
( |
|
display | ) |
XLockDisplay(display) |
◆ XVMCUNLOCKDISPLAY
#define XVMCUNLOCKDISPLAY |
( |
|
display | ) |
XUnlockDisplay(display) |
◆ context_lock_t
◆ xvmc_surface_handler_t
◆ xxmc_driver_t
◆ xvmc_context_reader_lock()
◆ xvmc_context_reader_unlock()
References context_lock_s::cond, context_lock_s::mutex, and context_lock_s::num_readers.
Referenced by xvmc_flush(), xxmc_display_frame(), xxmc_gui_data_exchange(), xxmc_lock_and_validate_surfaces(), xxmc_overlay_begin(), xxmc_overlay_blend(), xxmc_overlay_end(), xxmc_property_callback(), xxmc_set_property(), and xxmc_unlock_surfaces().
◆ xvmc_vld_frame()
void xvmc_vld_frame |
( |
struct vo_frame_s * |
this_gen | ) |
|
◆ xvmc_vld_slice()
◆ xxmc_xvmc_proc_macro_block()
void xxmc_xvmc_proc_macro_block |
( |
int |
x, |
|
|
int |
y, |
|
|
int |
mb_type, |
|
|
int |
motion_type, |
|
|
int(*) |
mv_field_sel[2], |
|
|
int * |
dmvector, |
|
|
int |
cbp, |
|
|
int |
dct_type, |
|
|
vo_frame_t * |
current_frame, |
|
|
vo_frame_t * |
forward_ref_frame, |
|
|
vo_frame_t * |
backward_ref_frame, |
|
|
int |
picture_structure, |
|
|
int |
second_field, |
|
|
int(*) |
f_mot_pmv[2], |
|
|
int(*) |
b_mot_pmv[2] |
|
) |
| |
References calc_DMV(), vo_frame_s::driver, NULL, vo_frame_s::picture_coding_type, vo_frame_s::top_field_first, VO_BOTH_FIELDS, XINE_MACROBLOCK_INTRA, XINE_MACROBLOCK_MOTION_BACKWARD, XINE_MACROBLOCK_MOTION_FORWARD, XINE_MACROBLOCK_PATTERN, XINE_MC_16X8, XINE_MC_DMV, XINE_MC_FIELD, XINE_MC_FRAME, XINE_PICT_B_TYPE, XINE_PICT_D_TYPE, XINE_PICT_I_TYPE, XINE_PICT_P_TYPE, and xvmc_render_macro_blocks().
Referenced by xxmc_frame_updates().
◆ xxmc_xvmc_surface_valid()
int xxmc_xvmc_surface_valid |
( |
xxmc_driver_t * |
this, |
|
|
XvMCSurface * |
surf |
|
) |
| |