MPD 0.17~git
|
00001 /* 00002 * Copyright (C) 2003-2011 The Music Player Daemon Project 00003 * http://www.musicpd.org 00004 * 00005 * This program is free software; you can redistribute it and/or modify 00006 * it under the terms of the GNU General Public License as published by 00007 * the Free Software Foundation; either version 2 of the License, or 00008 * (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License along 00016 * with this program; if not, write to the Free Software Foundation, Inc., 00017 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 00018 */ 00019 00020 /* 00021 * Functions for dealing with all configured (enabled) audion outputs 00022 * at once. 00023 * 00024 */ 00025 00026 #ifndef OUTPUT_ALL_H 00027 #define OUTPUT_ALL_H 00028 00029 #include <stdbool.h> 00030 #include <stddef.h> 00031 00032 struct audio_format; 00033 struct music_buffer; 00034 struct music_chunk; 00035 struct player_control; 00036 00041 void 00042 audio_output_all_init(struct player_control *pc); 00043 00047 void 00048 audio_output_all_finish(void); 00049 00054 unsigned int audio_output_count(void); 00055 00059 struct audio_output * 00060 audio_output_get(unsigned i); 00061 00066 struct audio_output * 00067 audio_output_find(const char *name); 00068 00073 void 00074 audio_output_all_enable_disable(void); 00075 00085 bool 00086 audio_output_all_open(const struct audio_format *audio_format, 00087 struct music_buffer *buffer); 00088 00092 void 00093 audio_output_all_close(void); 00094 00099 void 00100 audio_output_all_release(void); 00101 00110 bool 00111 audio_output_all_play(struct music_chunk *chunk); 00112 00119 unsigned 00120 audio_output_all_check(void); 00121 00130 bool 00131 audio_output_all_wait(struct player_control *pc, unsigned threshold); 00132 00137 void 00138 audio_output_all_pause(void); 00139 00143 void 00144 audio_output_all_drain(void); 00145 00149 void 00150 audio_output_all_cancel(void); 00151 00155 void 00156 audio_output_all_song_border(void); 00157 00163 float 00164 audio_output_all_get_elapsed_time(void); 00165 00166 #endif