annotate libvo/vesa_lvo.h @ 8843:c70444c5b516

I have seen problems where DVD subtitles don't display at the right time and sometimes they don't appear at all. The problem stems from the fact that subtitle command packets are being applied as soon as they are read and assembled from the input stream. Sometimes, a fully assembled subtitle packet arrives at the spudec_assemble function before the previous subtitle appears onscreen and thus the viewer only sees the second subtitle. So I created a patch that queues assembled subtitle packets and applies them at the appropriate time within the heartbeat function. The reset function clears the packet queue when seeking through the video. Tomasz Farkas <tomasz_farkas@yahoo.co.uk>
author arpi
date Wed, 08 Jan 2003 18:36:36 +0000
parents 56faed773768
children 046918174c25
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2869
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
1 /*
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
2 * vesa_lvo.c
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
3 *
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
4 * Copyright (C) Nick Kurshev <nickols_k@mail.ru> - Oct 2001
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
5 *
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
6 * You can redistribute this file under terms and conditions
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
7 * of GNU General Public licence v2.
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
8 *
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
9 * This file contains vo_vesa interface to Linux Video Overlay.
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
10 */
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
11
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
12 #ifndef __VESA_LVO_INCLUDED
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
13 #define __VESA_LVO_INCLUDED
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
14
2971
56faed773768 Added preinit of lvo stuff
nick
parents: 2869
diff changeset
15 int vlvo_preinit(
56faed773768 Added preinit of lvo stuff
nick
parents: 2869
diff changeset
16 const char *drvname);
56faed773768 Added preinit of lvo stuff
nick
parents: 2869
diff changeset
17 int vlvo_init(unsigned src_width,unsigned src_height,
2869
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
18 unsigned x_org,unsigned y_org,unsigned dst_width,
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
19 unsigned dst_height,unsigned format,unsigned dest_bpp);
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
20 void vlvo_term( void );
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
21 uint32_t vlvo_query_info(unsigned format);
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
22
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
23 uint32_t vlvo_draw_slice(uint8_t *image[], int stride[], int w,int h,int x,int y);
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
24 uint32_t vlvo_draw_frame(uint8_t *src[]);
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
25 void vlvo_flip_page(void);
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
26 void vlvo_draw_osd(void);
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
27
107d9e9e5bd1 New video output technique Linux Video Overlay:
nick
parents:
diff changeset
28 #endif