Mercurial > mplayer.hg
annotate libaf/af_dummy.c @ 35455:c9c79a011f6f
Fix bug with wrong track number after playlist has been cleared.
This also fixes issues with other associated information if there
is no media opened after playback.
Roughly based on a patch by Hans-Dieter Kosch, hdkosch kabelbw de.
author | ib |
---|---|
date | Sat, 01 Dec 2012 19:18:47 +0000 |
parents | a93891202051 |
children |
rev | line source |
---|---|
28229
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
1 /* |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
2 * The name speaks for itself. This filter is a dummy and will |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
3 * not blow up regardless of what you do with it. |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
4 * |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
5 * This file is part of MPlayer. |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
6 * |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
7 * MPlayer is free software; you can redistribute it and/or modify |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
8 * it under the terms of the GNU General Public License as published by |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
9 * the Free Software Foundation; either version 2 of the License, or |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
10 * (at your option) any later version. |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
11 * |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
12 * MPlayer is distributed in the hope that it will be useful, |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
15 * GNU General Public License for more details. |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
16 * |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
17 * You should have received a copy of the GNU General Public License along |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
18 * with MPlayer; if not, write to the Free Software Foundation, Inc., |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
20 */ |
72d0b1444141
Replace informal license notices by standard license header
diego
parents:
24888
diff
changeset
|
21 |
7568 | 22 #include <stdio.h> |
23 #include <stdlib.h> | |
24 #include <string.h> | |
25 | |
34174
a93891202051
Add missing mp_msg.h #includes, remove some unnecessary ones.
diego
parents:
32537
diff
changeset
|
26 #include "mp_msg.h" |
7568 | 27 #include "af.h" |
28 | |
29 // Initialization and runtime control | |
30 static int control(struct af_instance_s* af, int cmd, void* arg) | |
31 { | |
32 switch(cmd){ | |
33 case AF_CONTROL_REINIT: | |
34 memcpy(af->data,(af_data_t*)arg,sizeof(af_data_t)); | |
29049 | 35 mp_msg(MSGT_AFILTER, MSGL_V, "[dummy] Was reinitialized: %iHz/%ich/%s\n", |
14816 | 36 af->data->rate,af->data->nch,af_fmt2str_short(af->data->format)); |
7568 | 37 return AF_OK; |
38 } | |
39 return AF_UNKNOWN; | |
40 } | |
41 | |
29263
0f1b5b68af32
whitespace cosmetics: Remove all trailing whitespace.
diego
parents:
29049
diff
changeset
|
42 // Deallocate memory |
7568 | 43 static void uninit(struct af_instance_s* af) |
44 { | |
45 free(af->data); | |
46 } | |
47 | |
48 // Filter data through filter | |
49 static af_data_t* play(struct af_instance_s* af, af_data_t* data) | |
50 { | |
51 // Do something necessary to get rid of annoying warning during compile | |
52 if(!af) | |
29049 | 53 mp_msg(MSGT_AFILTER, MSGL_ERR, "EEEK: Argument af == NULL in af_dummy.c play()."); |
7568 | 54 return data; |
55 } | |
56 | |
57 // Allocate memory and set function pointers | |
22746
fd6f824ef894
Rename open to af_open so as not to conflict with a previous header definition.
diego
parents:
14816
diff
changeset
|
58 static int af_open(af_instance_t* af){ |
7568 | 59 af->control=control; |
60 af->uninit=uninit; | |
61 af->play=play; | |
24888 | 62 af->mul=1; |
7568 | 63 af->data=malloc(sizeof(af_data_t)); |
64 if(af->data == NULL) | |
65 return AF_ERROR; | |
66 return AF_OK; | |
67 } | |
68 | |
69 // Description of this filter | |
70 af_info_t af_info_dummy = { | |
71 "dummy", | |
72 "dummy", | |
73 "Anders", | |
74 "", | |
7615 | 75 AF_FLAGS_REENTRANT, |
22746
fd6f824ef894
Rename open to af_open so as not to conflict with a previous header definition.
diego
parents:
14816
diff
changeset
|
76 af_open |
7568 | 77 }; |