Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | DetachedSong: fork of struct Song | Max Kellermann | 2014-01-09 | 1 | -5/+5 |
| | | | | | | From now on, struct Song will be used by the database only, and DetachedSong will be used by everybody else. DetachedSong is easier to use, but Song has lower overhead. | ||||
* | DecoderControl: reduce the number of PlayerThread wakeups | Max Kellermann | 2013-11-06 | 1 | -3/+11 |
| | | | | | Wake up the PlayerThread only if it is really waiting for the decoder. This greatly reduces the number of system calls in the DecoderThread. | ||||
* | DecoderControl: convert mutex and client_cond to a reference | Max Kellermann | 2013-10-28 | 1 | -3/+14 |
| | | | | | | | | Share the Mutex between the DecoderThread and the PlayerThread. This simplifies synchronization between the two threads and fixes a freeze problem: while the PlayerThread waits for the DeocderThread, it cannot answer requests from the main thread, and the main thread will block until the DecoderThread finishes. | ||||
* | decoder_control: rename to DecoderControl | Max Kellermann | 2013-10-28 | 1 | -6/+6 |
| | |||||
* | DecoderControl: move code/attributes to new class MixRampInfo | Max Kellermann | 2013-10-26 | 1 | -8/+9 |
| | |||||
* | DecoderThread: move code to DecoderControl::CycleMixRamp() | Max Kellermann | 2013-10-26 | 1 | -1/+6 |
| | |||||
* | DecoderControl: add MixRamp getters | Max Kellermann | 2013-10-26 | 1 | -0/+12 |
| | |||||
* | Song: pass reference to song_equals() | Max Kellermann | 2013-10-21 | 1 | -2/+2 |
| | |||||
* | Thread/Thread: replacement library for GThread | Max Kellermann | 2013-10-17 | 1 | -4/+5 |
| | |||||
* | DecoderControl: use GLib forward declarations | Max Kellermann | 2013-09-27 | 1 | -2/+1 |
| | |||||
* | DecoderControl: convert "enum decoder_state" to strictly-typed enum | Max Kellermann | 2013-09-27 | 1 | -16/+22 |
| | |||||
* | DecoderCommand: convert to strictly-typed enum | Max Kellermann | 2013-09-27 | 1 | -8/+8 |
| | |||||
* | DecoderControl: convert functions to methods | Max Kellermann | 2013-09-27 | 1 | -0/+47 |
| | |||||
* | MusicBuffer: expose the C++ API | Max Kellermann | 2013-09-26 | 1 | -2/+3 |
| | |||||
* | MusicPipe: expose the C++ API | Max Kellermann | 2013-09-26 | 1 | -2/+3 |
| | |||||
* | util/Error: new error passing library | Max Kellermann | 2013-09-04 | 1 | -12/+16 |
| | | | | Replaces GLib's GError. | ||||
* | audio_format: convert to C++ | Max Kellermann | 2013-08-03 | 1 | -3/+3 |
| | |||||
* | song: convert header to C++ | Max Kellermann | 2013-07-28 | 1 | -4/+6 |
| | |||||
* | decoder_api: convert to C++ | Max Kellermann | 2013-07-28 | 1 | -1/+1 |
| | |||||
* | DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCond | Max Kellermann | 2013-01-27 | 1 | -8/+10 |
| | |||||
* | DecoderControl: move functions into the class | Max Kellermann | 2013-01-21 | 1 | -188/+135 |
| | |||||
* | PlayerControl: move functions into the class | Max Kellermann | 2013-01-20 | 1 | -0/+9 |
| | |||||
* | DecoderControl: take ownership of client_cond | Max Kellermann | 2013-01-10 | 1 | -1/+1 |
| | | | | | Don't let the "client" pass its own GCond. This was not used consistently. | ||||
* | decoder_*: convert to C++ | Max Kellermann | 2013-01-04 | 1 | -0/+339 |