Mercurial > audlegacy
annotate audacious/output.h @ 1938:1d9c1026d9f8 trunk
[svn] - DoubleSize support.
This has bugs, the most notable one being that DoubleSize only works
right if you restart the player.
The second bug is rather obvious too. No osmosis skinengine. No
TinyPlayer. Classic-esque skinengine only. This is because the
doublesize algorithm hates you and wants you to go die in a fire.
author | nenolod |
---|---|
date | Sun, 05 Nov 2006 04:43:16 -0800 |
parents | 705d4c089fce |
children | f18a5b617c34 |
rev | line source |
---|---|
0 | 1 /* BMP - Cross-platform multimedia player |
2 * Copyright (C) 2003-2004 BMP development team. | |
3 * | |
4 * Based on XMMS: | |
5 * Copyright (C) 1998-2003 XMMS development team. | |
6 * | |
7 * This program is free software; you can redistribute it and/or modify | |
8 * it under the terms of the GNU General Public License as published by | |
9 * the Free Software Foundation; either version 2 of the License, or | |
10 * (at your option) any later version. | |
11 * | |
12 * This program is distributed in the hope that it will be useful, | |
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 * GNU General Public License for more details. | |
16 * | |
17 * You should have received a copy of the GNU General Public License | |
18 * along with this program; if not, write to the Free Software | |
1459 | 19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. |
0 | 20 */ |
21 | |
22 #ifndef OUTPUT_H | |
23 #define OUTPUT_H | |
24 | |
25 #include <glib.h> | |
26 | |
27 #include "plugin.h" | |
28 | |
29 typedef struct _OutputPluginData OutputPluginData; | |
30 | |
31 struct _OutputPluginData { | |
32 GList *output_list; | |
33 OutputPlugin *current_output_plugin; | |
34 }; | |
35 | |
890
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
36 typedef struct _OutputPluginState OutputPluginState; |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
37 |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
38 struct _OutputPluginState { |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
39 AFormat fmt; |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
40 gint rate; |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
41 gint nch; |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
42 }; |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
43 |
0 | 44 GList *get_output_list(void); |
45 OutputPlugin *get_current_output_plugin(void); | |
46 void set_current_output_plugin(gint i); | |
47 void output_about(gint i); | |
48 void output_configure(gint i); | |
49 void output_get_volume(gint * l, gint * r); | |
50 void output_set_volume(gint l, gint r); | |
51 void output_set_eq(gboolean, gfloat, gfloat *); | |
890
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
52 gint output_open_audio(AFormat, gint, gint); |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
53 void output_write_audio(gpointer ptr, gint length); |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
54 void output_close_audio(void); |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
55 |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
56 void output_flush(gint); |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
57 void output_pause(gshort); |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
58 gint output_buffer_free(void); |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
59 gint output_buffer_playing(void); |
ed26947bbf57
[svn] Gapless support. This comes with a few caveats, that I will mention here:
nenolod
parents:
807
diff
changeset
|
60 |
0 | 61 void produce_audio(gint, AFormat, gint, gint, gpointer, int *); |
62 | |
806 | 63 gint get_written_time(void); |
64 gint get_output_time(void); | |
65 | |
807
df3412dc33c4
[svn] - add psuedo_output_plugin, a psuedo output plugin that will be used for reverse compatibility with old plugins.
nenolod
parents:
806
diff
changeset
|
66 extern OutputPlugin psuedo_output_plugin; |
0 | 67 extern OutputPluginData op_data; |
68 | |
69 #endif |