aboutsummaryrefslogtreecommitdiffstats
path: root/src/player_thread.h
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2009-03-11 09:35:16 +0100
committerMax Kellermann <max@duempel.org>2009-03-11 09:35:16 +0100
commitbc3702a4fd9237205df9316b21ea45917145a5f4 (patch)
treebcfe6a5fddbc8e78fd7bf007d58fa85269bca18b /src/player_thread.h
parent13cd6b28348d2b744a01bea03c4764860f31f909 (diff)
downloadmpd-bc3702a4fd9237205df9316b21ea45917145a5f4.tar.gz
mpd-bc3702a4fd9237205df9316b21ea45917145a5f4.tar.xz
mpd-bc3702a4fd9237205df9316b21ea45917145a5f4.zip
player_thread: added comments
Diffstat (limited to '')
-rw-r--r--src/player_thread.h23
1 files changed, 20 insertions, 3 deletions
diff --git a/src/player_thread.h b/src/player_thread.h
index f8b88f65d..6fd62ec7e 100644
--- a/src/player_thread.h
+++ b/src/player_thread.h
@@ -1,6 +1,6 @@
-/* the Music Player Daemon (MPD)
- * Copyright (C) 2008 Max Kellermann <max@duempel.org>
- * This project's homepage is: http://www.musicpd.org
+/*
+ * Copyright (C) 2003-2009 The Music Player Daemon Project
+ * http://www.musicpd.org
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -16,6 +16,23 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
+/* \file
+ *
+ * The player thread controls the playback. It acts as a bridge
+ * between the decoder thread and the output thread(s): it receives
+ * #music_chunk objects from the decoder, optionally mixes them
+ * (cross-fading), applies software volume, and sends them to the
+ * audio outputs via audio_output_all_play().
+ *
+ * It is controlled by the main thread (the playlist code), see
+ * player_control.h. The playlist enqueues new songs into the player
+ * thread and sends it commands.
+ *
+ * The player thread itself does not do any I/O. It synchronizes with
+ * other threads via #GMutex and #GCond objects, and passes
+ * #music_chunk instances around in #music_pipe objects.
+ */
+
#ifndef MPD_PLAYER_THREAD_H
#define MPD_PLAYER_THREAD_H