Mercurial > mplayer.hg
annotate gui/util/list.h @ 36545:f0e92381681d
Add support for files with MLTI chunks.
Fixes 06.rm and 08_lect_01.rm from FFmpeg trac #2152
Fixes also files from ftp://ftp.aduni.org/videos/
The patch has these limitations:
- no multirate files with MLTI chunks
- no mixed files (eg. MLTI for audio but not for video)
- no MLTI for video together with non-ra audio (eg. ralf)
- only DATA v0 (no v1, versions greater than 1 should not exist)
Files with these feature shuld not really exist anyway.
Also video MLTI files with only one stream are supported but untested
author | rtogni |
---|---|
date | Sun, 19 Jan 2014 15:12:46 +0000 |
parents | df731f25759e |
children | b28b632efeef |
rev | line source |
---|---|
33741 | 1 /* |
2 * This file is part of MPlayer. | |
3 * | |
4 * MPlayer is free software; you can redistribute it and/or modify | |
5 * it under the terms of the GNU General Public License as published by | |
6 * the Free Software Foundation; either version 2 of the License, or | |
7 * (at your option) any later version. | |
8 * | |
9 * MPlayer is distributed in the hope that it will be useful, | |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 * GNU General Public License for more details. | |
13 * | |
14 * You should have received a copy of the GNU General Public License along | |
15 * with MPlayer; if not, write to the Free Software Foundation, Inc., | |
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |
17 */ | |
18 | |
19 #ifndef MPLAYER_GUI_LIST_H | |
20 #define MPLAYER_GUI_LIST_H | |
21 | |
34663 | 22 /// listMgr() commands |
23 enum { | |
34667 | 24 PLAYLIST_GET, |
34681 | 25 PLAYLIST_ITEM_APPEND, |
34663 | 26 PLAYLIST_ITEM_INSERT, |
35460 | 27 PLAYLIST_ITEM_FIND, |
34663 | 28 PLAYLIST_ITEM_SET_CURR, |
29 PLAYLIST_ITEM_GET_CURR, | |
35458 | 30 PLAYLIST_ITEM_GET_POS, |
34663 | 31 PLAYLIST_ITEM_GET_PREV, |
32 PLAYLIST_ITEM_GET_NEXT, | |
35962 | 33 PLAYLIST_ITEM_GET_LAST, |
34663 | 34 PLAYLIST_ITEM_DEL_CURR, |
35 PLAYLIST_DELETE, | |
34668 | 36 URLLIST_GET, |
34663 | 37 URLLIST_ITEM_ADD, |
38 URLLIST_DELETE | |
39 }; | |
33742
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
40 |
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
41 typedef struct plItem { |
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
42 char *path; |
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
43 char *name; |
34612 | 44 struct plItem *prev, *next; |
33742
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
45 } plItem; |
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
46 |
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
47 typedef struct urlItem { |
34612 | 48 char *url; |
33742
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
49 struct urlItem *next; |
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
50 } urlItem; |
e1539e14d60f
Move purely list related parts of gtkSet() from interface.c to list.c.
ib
parents:
33741
diff
changeset
|
51 |
35729 | 52 /// @name List manager (playlist, URL list) |
34610 | 53 void *listMgr(int cmd, void *data); |
54 | |
35729 | 55 /// @name Char pointer list operations |
34610 | 56 //@{ |
57 void listRepl(char ***list, const char *search, const char *replace); | |
58 void listSet(char ***list, const char *entry); | |
59 //@} | |
33741 | 60 |
35729 | 61 /// @name High-level list operations |
35376 | 62 //@{ |
63 int add_to_gui_playlist(const char *what, int how); | |
64 //@} | |
65 | |
33741 | 66 #endif /* MPLAYER_GUI_LIST_H */ |