Mercurial > mplayer.hg
annotate libvo/video_out_internal.h @ 33517:850a3272e10d
Change code to allow STREAM_CTRL_GET_CURRENT_TIME with cache enabled.
Due to that time being from what is currently read into the cache it
is unfortunately somewhat inaccurate and unsmooth, however for streams
that do have stream timestamps it is till a lot better than going by
the demuxer alone.
In particular it fixes bug #1081, when starting a DVD with -chapter
following seeks would be relative to the start of the DVD instead
of the current position.
author | reimar |
---|---|
date | Sun, 12 Jun 2011 11:26:22 +0000 |
parents | ddb45e9443ec |
children | 211cb1950419 |
rev | line source |
---|---|
1 | 1 /* |
26739
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
2 * Copyright (C) Aaron Holtzman - Aug 1999 |
1 | 3 * |
26739
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
4 * This file is part of MPlayer. |
1 | 5 * |
26739
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
6 * MPlayer is free software; you can redistribute it and/or modify |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
7 * it under the terms of the GNU General Public License as published by |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
8 * the Free Software Foundation; either version 2 of the License, or |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
9 * (at your option) any later version. |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
10 * |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
11 * MPlayer is distributed in the hope that it will be useful, |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
14 * GNU General Public License for more details. |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
15 * |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
16 * You should have received a copy of the GNU General Public License along |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
17 * with MPlayer; if not, write to the Free Software Foundation, Inc., |
2a34d9fa52ab
Use standard license headers with standard formatting.
diego
parents:
26162
diff
changeset
|
18 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
1 | 19 */ |
20 | |
26029 | 21 #ifndef MPLAYER_VIDEO_OUT_INTERNAL_H |
22 #define MPLAYER_VIDEO_OUT_INTERNAL_H | |
25553
6ac1ece1f9fe
Add multiple inclusion guards to all header files that lack them.
diego
parents:
21977
diff
changeset
|
23 |
26162
0585db9f5b32
Add missing header #includes to fix 'make checkheaders'.
diego
parents:
26029
diff
changeset
|
24 #include <stdint.h> |
0585db9f5b32
Add missing header #includes to fix 'make checkheaders'.
diego
parents:
26029
diff
changeset
|
25 |
7876 | 26 /* All video drivers will want this */ |
13787
e047e70a9767
Handle "xxx.h" vs "../xxx.h" include paths in a consistent way.
diego
parents:
8148
diff
changeset
|
27 #include "libmpcodecs/vfcap.h" |
e047e70a9767
Handle "xxx.h" vs "../xxx.h" include paths in a consistent way.
diego
parents:
8148
diff
changeset
|
28 #include "libmpcodecs/mp_image.h" |
7876 | 29 #include "geometry.h" |
5566 | 30 |
33305
ddb45e9443ec
Remove the variable arguments from the libvo control() functions.
iive
parents:
32469
diff
changeset
|
31 static int control(uint32_t request, void *data); |
16171
fd51fd1ff231
Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents:
13787
diff
changeset
|
32 static int config(uint32_t width, uint32_t height, uint32_t d_width, |
4433 | 33 uint32_t d_height, uint32_t fullscreen, char *title, |
7124
eca7dbad0166
finally removed query_vaa, bes_da and vo_tune_info - the obsoleted libvo api
alex
parents:
5607
diff
changeset
|
34 uint32_t format); |
16171
fd51fd1ff231
Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents:
13787
diff
changeset
|
35 static int draw_frame(uint8_t *src[]); |
fd51fd1ff231
Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents:
13787
diff
changeset
|
36 static int draw_slice(uint8_t *image[], int stride[], int w,int h,int x,int y); |
1502 | 37 static void draw_osd(void); |
1 | 38 static void flip_page(void); |
31 | 39 static void check_events(void); |
1 | 40 static void uninit(void); |
16171
fd51fd1ff231
Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents:
13787
diff
changeset
|
41 static int query_format(uint32_t format); |
fd51fd1ff231
Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents:
13787
diff
changeset
|
42 static int preinit(const char *); |
1 | 43 |
44 #define LIBVO_EXTERN(x) vo_functions_t video_out_##x =\ | |
45 {\ | |
8148
5b39e79af5fe
removed get_info, using the same sheme as in libmpcodecs instead
alex
parents:
7876
diff
changeset
|
46 &info,\ |
4352 | 47 preinit,\ |
4433 | 48 config,\ |
4592
5fbfd8545c3b
query_ stuff replaced by new control() - patch by David Holm
arpi
parents:
4433
diff
changeset
|
49 control,\ |
1 | 50 draw_frame,\ |
51 draw_slice,\ | |
1501
d40f2b686846
changes according to -utf8 option, draw_osd() function added
atlka
parents:
616
diff
changeset
|
52 draw_osd,\ |
1 | 53 flip_page,\ |
31 | 54 check_events,\ |
4592
5fbfd8545c3b
query_ stuff replaced by new control() - patch by David Holm
arpi
parents:
4433
diff
changeset
|
55 uninit\ |
1 | 56 }; |
326 | 57 |
32469
3fef2e17a03f
Move osd.[ch] and osd_template.c from libvo to sub.
cigaes
parents:
26739
diff
changeset
|
58 #include "sub/osd.h" |
326 | 59 |
26029 | 60 #endif /* MPLAYER_VIDEO_OUT_INTERNAL_H */ |