aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-01-07Queue: move queue_shuffle_order_first() into the classMax Kellermann2-5/+6
2013-01-07Queue: move queue_shuffle_order_range() into the classMax Kellermann2-12/+13
2013-01-07Playlist: convert functions to methodsMax Kellermann15-769/+651
2013-01-07DatabaseQueue: pass DatabaseSelection to Add...()Max Kellermann4-15/+10
2013-01-07Client: add Partition reference attributeMax Kellermann8-31/+30
playlist and player_control are deprecated.
2013-01-07TagPool: use the Mutex class instead of GStaticMutexMax Kellermann3-22/+13
2013-01-07tag: convert to C++Max Kellermann9-85/+113
2013-01-07DatabaseLock: use the Mutex class instead of GLib's GMutexMax Kellermann2-4/+5
2013-01-07thread/Mutex: don't use std::mutexMax Kellermann2-8/+68
Use a custom pthread_mutex_t wrapper because std::mutex adds overhead.
2013-01-07replay_gain_info, ...: use cmath instead of math.h in C++ modeMax Kellermann5-8/+20
Fixes build problems with mingw32.
2013-01-07filter/replay_gain: convert to C++Max Kellermann5-17/+22
2013-01-07decoder_api.h, ...: add "extern C"Max Kellermann45-73/+86
2013-01-07mixer_all: convert to C++Max Kellermann11-23/+18
2013-01-07volume: convert to C++Max Kellermann6-13/+12
2013-01-07audio_config, volume, mixer_all: include cleanupMax Kellermann3-10/+0
2013-01-06Queue: use std::swapMax Kellermann2-7/+4
2013-01-06queue: convert all functions to methodsMax Kellermann11-558/+473
2013-01-06Queue: add constructor and destructorMax Kellermann3-43/+31
2013-01-06Playlist: add constructor and destructorMax Kellermann3-27/+11
2013-01-06DatabaseQueue: force passing playlist reference to std::bind()Max Kellermann1-1/+1
Avoid implicit copy.
2013-01-05Partition: new class, container for Playlist and PlayerControlMax Kellermann10-60/+102
This is the beginning of multi-player support. There will be support for multiple Partition objects in one MPD process.
2013-01-05filter/ReplayGain: add method _set_mode()Max Kellermann10-14/+56
Push the new mode to the filter instead of accessing global variables through replay_gain_get_real_mode().
2013-01-05DecoderAPI: don't use replay_gain_get_real_mode()Max Kellermann1-1/+5
replay_gain_get_real_mode() accesses dangerous globals. Let's just use the global variable replay_gain_mode, and assume "AUTO" means "TRACK". At this point, this is the best we can do, because neither the decoder nor the player should know about the current replay gain mode. This is applied as a filter in the output thread.
2013-01-05DecoderAPI: _replay_gain() returns voidMax Kellermann4-17/+9
Let the function decoder_replay_gain() update decoder_control::replay_gain_db instead of letting each decoder plugin take care for that.
2013-01-04replay_gain_*: convert to C++Max Kellermann2-2/+9
2013-01-04replay_gain_config: remove unused variable replay_gain_mode_namesMax Kellermann1-5/+0
2013-01-04DatabaseQueue: pass playlist objectMax Kellermann4-8/+14
Don't use the global variable "g_playlist".
2013-01-04Client: add "playlist" attributeMax Kellermann7-64/+84
Reduce access to the global variable "g_playlist".
2013-01-04PlayerControl: initialize all attributesMax Kellermann1-1/+5
2013-01-04Client: initialize num_subscriptionsMax Kellermann1-1/+2
2013-01-04Playlist: pass max_length to playlist_init()Max Kellermann4-10/+8
Move the configuration lookup to Main.cxx.
2013-01-04PlayerControl: add constructor and destructorMax Kellermann3-33/+24
2013-01-04player_control.h: convert header to C++Max Kellermann13-15/+14
2013-01-04playlist: convert to C++Max Kellermann23-61/+66
2013-01-04DecoderThread: move code to destructorMax Kellermann3-14/+26
2013-01-04DecoderInternal: initialize replay_gain_serialMax Kellermann1-1/+2
2013-01-04DecoderInternal: move initializers to constructorMax Kellermann2-13/+10
2013-01-04MusicChunk: move functions to methodsMax Kellermann8-104/+89
2013-01-04Mutex: new wrapper for std::mutex, replaces GMutexMax Kellermann4-43/+134
2013-01-04MusicPipe: allocate with new/deleteMax Kellermann1-17/+18
2013-01-04mpd_error.h: add missing glib.h includeMax Kellermann1-0/+1
2013-01-04MusicBuffer: return memory to kernel when stopping playbackMax Kellermann2-5/+28
Use the new HugeAllocator as backend for SliceBuffer and call HugeDiscard() when the last chunk was returned.
2013-01-04HugeAllocator: new memory allocatorMax Kellermann2-0/+169
2013-01-04SliceBuffer: lazy initializationMax Kellermann1-13/+21
Avoid page faults on MPD startup. This saves a lot of memory for an idle MPD.
2013-01-04MusicBuffer: move code to template class SliceBufferMax Kellermann2-60/+146
2013-01-04MusicBuffer: allocate with new/deleteMax Kellermann1-30/+30
2013-01-04MusicBuffer: disable memory poisoningMax Kellermann1-4/+0
This is harmful for memory usage, because it forces the kernel to allocate physical memory, even before playback has started. No bug has been found in a few years with this, so it's safe to assume that this code is not necessary.
2013-01-04Client, Inotify: use std::list instead of std::dequeMax Kellermann2-4/+4
Random access is not necessary here.
2013-01-04crossfade: convert to C++Max Kellermann3-6/+6
2013-01-04buffer, pipe: convert to C++Max Kellermann14-45/+36