1 /* plain X11 */ 2 extern unsigned int x11_dpy_fmtid; 3 4 Visual* x11_find_visual(Display *dpy); 5 void x11_init_visual(Display *dpy, XVisualInfo *vinfo); 6 7 XImage *x11_create_ximage(Display *dpy, XVisualInfo *vinfo, 8 int width, int height, XShmSegmentInfo **shm); 9 void x11_destroy_ximage(Display *dpy, XImage * ximage, XShmSegmentInfo *shm); 10 Pixmap x11_create_pixmap(Display *dpy, XVisualInfo *vinfo, 11 struct ng_video_buf *buf); 12 void x11_blit(Display *dpy, Drawable dr, GC gc, XImage *xi, 13 int a, int b, int c, int d, int w, int h); 14 15 /* xvideo extention */ 16 #ifdef HAVE_LIBXV 17 void xv_image_init(Display *dpy); 18 XvImage* xv_create_ximage(Display *dpy, int width, int height, 19 int format, XShmSegmentInfo **shm); 20 void xv_destroy_ximage(Display *dpy, XvImage * xvimage, XShmSegmentInfo *shm); 21 void xv_blit(Display *dpy, Drawable dr, GC gc, XvImage *xi, 22 int a, int b, int c, int d, int x, int y, int w, int h); 23 #endif 24 25 /* video frame blitter */ 26 struct blit_state; 27 struct blit_state* blit_init(Widget widget, XVisualInfo *vinfo, int use_gl); 28 void blit_get_formats(struct blit_state *st, int *fmtids, int max); 29 void blit_resize(struct blit_state *st, Dimension width, Dimension height); 30 void blit_init_frame(struct blit_state *st, struct ng_video_fmt *fmt); 31 void blit_fini_frame(struct blit_state *st); 32 void blit_fini(struct blit_state *st); 33 void blit_putframe(struct blit_state *st, struct ng_video_buf *buf); 34