Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2014-03-16 | test/run_decoder: use InputStream::OpenReady() instead of InputStream::Open() | Max Kellermann | 1 | -1/+1 | |
2014-03-16 | test/{run_decoder,dump_playlist}: fix accidental search/replace hiccups | Max Kellermann | 1 | -1/+1 | |
2014-02-07 | DecoderPlugin: pass Path instance to file_decode() and scan_file() | Max Kellermann | 1 | -1/+2 | |
2014-01-24 | Input*: move to input/ | Max Kellermann | 1 | -3/+3 | |
2014-01-24 | decoder/*: move to decoder/plugins/ | Max Kellermann | 1 | -2/+2 | |
2014-01-13 | copyright year 2014 | Max Kellermann | 1 | -1/+1 | |
2013-12-15 | test/*: use fprintf(stderr,...) and Log() instead of g_printerr() | Max Kellermann | 1 | -30/+19 | |
Avoid GLib. | |||||
2013-12-15 | configure.ac: add option "--disable-glib" | Max Kellermann | 1 | -0/+4 | |
Allows building without GLib. This fails to compile currently, because GLib is still used in the MPD core. | |||||
2013-12-14 | DecoderAPI: add function decoder_read_full() | Max Kellermann | 1 | -0/+18 | |
Move code from the "mad" plugin. | |||||
2013-12-14 | DecoderAPI: add function decoder_skip() | Max Kellermann | 1 | -0/+16 | |
Move code from the "mad" plugin. | |||||
2013-10-26 | DecoderControl: move code/attributes to new class MixRampInfo | Max Kellermann | 1 | -4/+1 | |
2013-10-25 | ReplayGainInfo: refactor to a class | Max Kellermann | 1 | -2/+2 | |
2013-10-25 | ReplayGainInfo: use CamelCase for struct name | Max Kellermann | 1 | -4/+3 | |
2013-10-24 | test/run_decoder: print the song duration | Max Kellermann | 1 | -3/+4 | |
2013-10-23 | input_stream: rename struct to InputStream | Max Kellermann | 1 | -7/+7 | |
2013-10-21 | decoder: rename the struct to "Decoder" | Max Kellermann | 1 | -15/+18 | |
2013-10-21 | DecoderPlugin: move functions into the struct | Max Kellermann | 1 | -3/+2 | |
2013-10-21 | decoder_plugin: rename struct to DecoderPlugin | Max Kellermann | 1 | -1/+1 | |
2013-10-19 | *: use references instead of pointers | Max Kellermann | 1 | -2/+2 | |
2013-10-17 | thread/{Cond,Mutex}: use "class" instead of "typedef" | Max Kellermann | 1 | -0/+1 | |
Allows forward-declaration. | |||||
2013-10-02 | Log: new logging library API | Max Kellermann | 1 | -2/+3 | |
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend. | |||||
2013-09-27 | DecoderCommand: convert to strictly-typed enum | Max Kellermann | 1 | -6/+6 | |
2013-09-05 | InputLegacy: move functions to the input_stream class | Max Kellermann | 1 | -7/+6 | |
2013-09-04 | util/Error: new error passing library | Max Kellermann | 1 | -10/+10 | |
Replaces GLib's GError. | |||||
2013-09-03 | IOThread: use FatalError() on g_thread_create() error | Max Kellermann | 1 | -5/+1 | |
New GLib versions don't fail. | |||||
2013-09-03 | input_stream.h: rename to InputLegacy.hxx | Max Kellermann | 1 | -1/+1 | |
2013-08-04 | *: use gcc.h macros instead of GLib | Max Kellermann | 1 | -20/+20 | |
2013-08-03 | audio_format: convert to C++ | Max Kellermann | 1 | -3/+3 | |
2013-07-31 | DecoderAPI: pass rvalue reference to decoder_tag() | Max Kellermann | 1 | -1/+1 | |
Avoid duplicating the tag. | |||||
2013-07-30 | tag: convert to C++ | Max Kellermann | 1 | -1/+1 | |
2013-07-28 | decoder_api: convert to C++ | Max Kellermann | 1 | -1/+1 | |
2013-04-17 | don't use g_thread_init() with GLib 2.32 | Max Kellermann | 1 | -0/+3 | |
Deprecated. | |||||
2013-01-30 | decoder_list: convert to C++ | Max Kellermann | 1 | -3/+1 | |
2013-01-27 | DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCond | Max Kellermann | 1 | -5/+2 | |
2013-01-10 | io_thread: convert to C++ | Max Kellermann | 1 | -1/+1 | |
2013-01-10 | input_stream: convert to C++ (internally) | Max Kellermann | 1 | -1/+3 | |
2013-01-09 | test/run_decoder,read_tags: remove obsolete dummy functions | Max Kellermann | 1 | -21/+0 | |
2013-01-05 | DecoderAPI: _replay_gain() returns void | Max Kellermann | 1 | -4/+1 | |
Let the function decoder_replay_gain() update decoder_control::replay_gain_db instead of letting each decoder plugin take care for that. | |||||
2012-08-08 | tag_pool: use GStaticMutex | Max Kellermann | 1 | -5/+0 | |
Eliminates explicit global initialisation. | |||||
2012-03-19 | event_pipe, test: explicitly ignore write() return value | Max Kellermann | 1 | -1/+1 | |
Some compilers are very picky, but we really aren't interested in the return value. | |||||
2012-03-19 | event_pipe, test: explicitly ignore write() return value | Max Kellermann | 1 | -1/+1 | |
Some compilers are very picky, but we really aren't interested in the return value. | |||||
2012-02-13 | test/run_decoder: initialize GThread | Max Kellermann | 1 | -0/+1 | |
2012-02-04 | test/run_decoder: initialize the tag_pool library | Max Kellermann | 1 | -0/+5 | |
2011-10-20 | pcm_volume: "length" is a "size_t", not "int" | Max Kellermann | 1 | -1/+1 | |
2011-10-10 | pcm_{mix,volume}: pass only sample_format to pcm_mix() | Max Kellermann | 1 | -1/+1 | |
The other audio_format attributes are not used. | |||||
2011-10-03 | test/run_decoder: initialize GThread | Max Kellermann | 1 | -0/+1 | |
Needed for the I/O thread. | |||||
2011-09-16 | input_stream: non-blocking I/O | Max Kellermann | 1 | -2/+8 | |
Add GMutex, GCond attributes which will be used by callers to conditionally wait on the stream. Remove the (now-useless) plugin method buffer(), wait on GCond instead. Lock the input_stream before each method call. Do the same with the playlist plugins. | |||||
2011-08-24 | input/soup: new input plugin based on libsoup | Max Kellermann | 1 | -0/+10 | |
To demonstrate the new I/O thread. libsoup is well-integrated into the GLib main loop, which made this plugin pretty easy to write. As a side effect, we have to initialize the I/O thread in all debug programs that use the input API. | |||||
2011-01-29 | copyright year 2011 | Max Kellermann | 1 | -1/+1 | |
2010-07-20 | test/run_decoder: dump replay gain | Max Kellermann | 1 | -1/+12 | |