-/** \file audiod.h symbols exported from audiod.c */
-int num_filters(int audio_format_num);
-int get_audio_format_num(char *name);
-enum {
- AUDIO_FORMAT_MP3,
- AUDIO_FORMAT_OGG,
- AUDIO_FORMAT_AAC,
- NUM_AUDIO_FORMATS
-};
+/*
+ * Copyright (C) 2006 Andre Noll <maan@tuebingen.mpg.de>
+ *
+ * Licensed under the GPL v2. For licencing details see COPYING.
+ */
+
+/** \file audiod.h Symbols exported from audiod.c. */
+
+
+/** enum of audio formats supported by para_audiod */
+enum {AUDIOD_AUDIO_FORMATS_ENUM};
+
+/** array of audio format names supported by para_audiod */
extern const char *audio_formats[];
-#define DEFINE_AUDIO_FORMAT_ARRAY const char *audio_formats[] = {"mp3", "ogg", "aac", NULL}
-#define MAX_STREAM_SLOTS 5
+/**
+ * the possible modes of operation
+ *
+ * - off: disconnect from para_server
+ * - on: receive status information from para_server and play the audio stream
+ * - sb: only receive status information but not the audio stream
+ */
+enum audiod_status_info {AUDIOD_OFF, AUDIOD_ON, AUDIOD_STANDBY};
+
+/** defines one command of para_audiod */
+struct audiod_command {
+ /** the name of the command */
+ const char *name;
+ /** pointer to the function that handles the command */
+ int (*handler)(int, int, char**);
+ /** one-line description of the command */
+ const char *description;
+ /** summary of the command line options */
+ const char *usage;
+ /** the long help text */
+ const char *help;
+};
+
+__malloc char *audiod_get_decoder_flags(void);
+extern struct audiod_args_info conf;
+extern int audiod_status;
+
+int handle_connect(int accept_fd, fd_set *rfds);
+void audiod_status_dump(bool force);
+char *get_time_string(void);
+struct btr_node *audiod_get_btr_root(void);
+
+void stat_client_write_item(int item_num);
+void clear_and_dump_items(void);
+void close_stat_clients(void);