Mercurial > mplayer.hg
annotate metadata.h @ 24900:9079c9745ff9
A/V sync: take audio filter buffers into account
Substract the delay caused by filter buffering when calculating
currently playing audio position. This matters for af_scaletempo which
buffers significant and varying amounts of data. For other current
filters the effect is normally insignificant.
Instead of the old time-based filter delay field (which was ignored)
this version stores the per-filter delay in units of bytes input read
without corresponding output. This allows the current scaletempo
behavior where other filters before and after it can see the same
nominal samplerate even though the real duration of the data varies;
in this case the other filters can not know the delay they're causing
in terms of real time.
author | uau |
---|---|
date | Thu, 01 Nov 2007 06:52:50 +0000 |
parents | 3f0d00abc073 |
children | 4129c8cfa742 |
rev | line source |
---|---|
19532
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
1 /* |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
2 * Copyright (C) 2006 Benjamin Zores |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
3 * Set of helper routines for stream metadata and properties retrieval. |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
4 * |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
5 * This program is free software; you can redistribute it and/or modify |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
6 * it under the terms of the GNU General Public License as published by |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
7 * the Free Software Foundation; either version 2 of the License, or |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
8 * (at your option) any later version. |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
9 * |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
10 * This program is distributed in the hope that it will be useful, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
13 * GNU General Public License for more details. |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
14 * |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
15 * You should have received a copy of the GNU General Public License |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
16 * along with this program; if not, write to the Free Software Foundation, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
17 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
18 */ |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
19 |
23689
3f0d00abc073
Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents:
19532
diff
changeset
|
20 #ifndef METADATA_H |
3f0d00abc073
Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents:
19532
diff
changeset
|
21 #define METADATA_H |
19532
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
22 |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
23 typedef enum metadata_s metadata_t; |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
24 enum metadata_s { |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
25 /* common info */ |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
26 META_NAME = 0, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
27 |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
28 /* video stream properties */ |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
29 META_VIDEO_CODEC, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
30 META_VIDEO_BITRATE, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
31 META_VIDEO_RESOLUTION, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
32 |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
33 /* audio stream properties */ |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
34 META_AUDIO_CODEC, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
35 META_AUDIO_BITRATE, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
36 META_AUDIO_SAMPLES, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
37 |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
38 /* ID3 tags and other stream infos */ |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
39 META_INFO_TITLE, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
40 META_INFO_ARTIST, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
41 META_INFO_ALBUM, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
42 META_INFO_YEAR, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
43 META_INFO_COMMENT, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
44 META_INFO_TRACK, |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
45 META_INFO_GENRE |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
46 }; |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
47 |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
48 char *get_metadata (metadata_t type); |
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
49 |
23689
3f0d00abc073
Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents:
19532
diff
changeset
|
50 #endif /* METADATA_H */ |
19532
13599373bb02
added new helpers to allow easy metadata retrieval and make libmenu use them
ben
parents:
diff
changeset
|
51 |