annotate stream/cdd.h @ 31658:66795d9dcb51

Improve MPEG-TS subtitle support: make it use the infrastructure for subtitle handling so e.g. switching subtitles at runtime works and add support for PGS subtitles.
author reimar
date Mon, 12 Jul 2010 18:04:05 +0000
parents 80a4a25c24c5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
30426
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
1 /*
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
2 * This file is part of MPlayer.
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
3 *
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
4 * MPlayer is free software; you can redistribute it and/or modify
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
5 * it under the terms of the GNU General Public License as published by
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
6 * the Free Software Foundation; either version 2 of the License, or
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
7 * (at your option) any later version.
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
8 *
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
9 * MPlayer is distributed in the hope that it will be useful,
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
12 * GNU General Public License for more details.
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
13 *
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
14 * You should have received a copy of the GNU General Public License along
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
15 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
17 */
ce0122361a39 Add license header to all files missing it in the stream subdirectory.
diego
parents: 30165
diff changeset
18
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 23689
diff changeset
19 #ifndef MPLAYER_CDD_H
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 23689
diff changeset
20 #define MPLAYER_CDD_H
6695
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
21
30165
b4cbeff5153e Add a few missing header #includes and #defines.
diego
parents: 29263
diff changeset
22 #include <sys/types.h>
6695
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
23
31417
ca9623cfa117 Move cdda_opts extern declaration to stream/cdd.h.
diego
parents: 30733
diff changeset
24 #include "m_option.h"
ca9623cfa117 Move cdda_opts extern declaration to stream/cdd.h.
diego
parents: 30733
diff changeset
25
ca9623cfa117 Move cdda_opts extern declaration to stream/cdd.h.
diego
parents: 30733
diff changeset
26 extern const m_option_t cdda_opts[];
ca9623cfa117 Move cdda_opts extern declaration to stream/cdd.h.
diego
parents: 30733
diff changeset
27
6695
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
28 typedef struct cd_track {
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
29 char *name;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
30 unsigned int track_nb;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
31 unsigned int min;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
32 unsigned int sec;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
33 unsigned int msec;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
34 unsigned long frame_begin;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
35 unsigned long frame_length;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
36 struct cd_track *prev;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
37 struct cd_track *next;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
38 } cd_track_t;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
39
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
40 typedef struct {
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
41 char *artist;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
42 char *album;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
43 char *genre;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
44 unsigned int nb_tracks;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
45 unsigned int min;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
46 unsigned int sec;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
47 unsigned msec;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
48 cd_track_t *first;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
49 cd_track_t *last;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
50 cd_track_t *current;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
51 } cd_info_t;
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
52
30733
19a6d39d5fdd Fix cd_info_new() prototype.
cehoyos
parents: 30426
diff changeset
53 cd_info_t* cd_info_new(void);
6695
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
54 void cd_info_free(cd_info_t *cd_info);
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
55 cd_track_t* cd_info_add_track(cd_info_t *cd_info, char *track_name, unsigned int track_nb, unsigned int min, unsigned int sec, unsigned int msec, unsigned long frame_begin, unsigned long frame_length);
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
56 cd_track_t* cd_info_get_track(cd_info_t *cd_info, unsigned int track_nb);
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
57
7953
60624e692b95 GCC warning fixes
bertrand
parents: 6695
diff changeset
58 void cd_info_debug(cd_info_t *cd_info);
6695
c2dbba99b31e Created a new header file to store common struct & prototype for
bertrand
parents:
diff changeset
59
31443
ea6731235485 Move declarations for functions defined in stream_cddb.c to cdd.h.
diego
parents: 31440
diff changeset
60 int cdd_identify(const char *dev);
ea6731235485 Move declarations for functions defined in stream_cddb.c to cdd.h.
diego
parents: 31440
diff changeset
61 int cddb_resolve(const char *dev, char **xmcd_file);
ea6731235485 Move declarations for functions defined in stream_cddb.c to cdd.h.
diego
parents: 31440
diff changeset
62 cd_info_t* cddb_parse_xmcd(char *xmcd_file);
ea6731235485 Move declarations for functions defined in stream_cddb.c to cdd.h.
diego
parents: 31440
diff changeset
63
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 23689
diff changeset
64 #endif /* MPLAYER_CDD_H */