aboutsummaryrefslogtreecommitdiffstats
path: root/src/DecoderThread.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-10-23DecoderThread: remove unused function deconst_plugin()Max Kellermann1-9/+0
2013-10-21DecoderThread: simplify the decoder lookup loopMax Kellermann1-64/+42
Merge the two loops into one, and eliminate the GSList.
2013-10-21decoder: rename the struct to "Decoder"Max Kellermann1-36/+34
2013-10-21DecoderPlugin: move functions into the structMax Kellermann1-2/+2
2013-10-21decoder_plugin: rename struct to DecoderPluginMax Kellermann1-8/+8
2013-10-19*: use references instead of pointersMax Kellermann1-85/+83
2013-10-19*: use nullptr instead of NULLMax Kellermann1-41/+41
2013-10-17fs/Path: rename to AllocatedPathMax Kellermann1-1/+1
The new class Path only holds a string pointer without being responsible for allocation/deallocation. The FileSystem.hxx library accepts Path arguments instead of AllocatedPath, to avoid forcing callers to allocate another string object.
2013-10-17fs/Path: move definitions to struct PathTraitsMax Kellermann1-1/+2
2013-10-17Thread/Thread: replacement library for GThreadMax Kellermann1-13/+6
2013-10-17Song: GetURI() returns std::stringMax Kellermann1-9/+5
2013-10-14fs/Path: add method IsAbsolute()Max Kellermann1-1/+1
2013-10-02Log: new logging library APIMax Kellermann1-6/+7
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
2013-10-02filesystem/Path: use std::stringMax Kellermann1-1/+1
2013-09-27DecoderControl: convert "enum decoder_state" to strictly-typed enumMax Kellermann1-14/+14
2013-09-27DecoderCommand: convert to strictly-typed enumMax Kellermann1-12/+12
2013-09-05Tag, ...: move to libtag.aMax Kellermann1-1/+1
2013-09-05InputLegacy: move functions to the input_stream classMax Kellermann1-11/+8
2013-09-04Tag*: move libtag.a sources to src/tag/Max Kellermann1-1/+1
2013-09-04util/Error: new error passing libraryMax Kellermann1-16/+14
Replaces GLib's GError.
2013-08-07Makefile.am: move sources to libsystem.aMax Kellermann1-1/+1
2013-08-07FatalError: new library to replace mpd_error.hMax Kellermann1-2/+2
2013-07-30tag: convert to C++Max Kellermann1-2/+2
2013-07-29ape: convert to C++Max Kellermann1-4/+1
2013-07-28song: convert header to C++Max Kellermann1-7/+7
2013-07-28decoder_api: convert to C++Max Kellermann1-3/+3
2013-04-17use g_thread_new() if GLib is recent enoughMax Kellermann1-2/+5
Fixes deprecation warnings.
2013-04-08uri: convert to C++Max Kellermann1-1/+1
2013-01-30decoder_list: convert to C++Max Kellermann1-1/+1
2013-01-28InputStream: use std::stringMax Kellermann1-2/+3
2013-01-27DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCondMax Kellermann1-2/+2
2013-01-26input_stream: forward-declare the structMax Kellermann1-1/+1
Hide the definition from C code, to prepare the transition to C++.
2013-01-22Path: move to fs subdirectoryDenis Krjuchkov1-1/+1
2013-01-21DecoderControl: move functions into the classMax Kellermann1-28/+28
2013-01-18Path: new class "Path" wraps filesystem path stringsMax Kellermann1-1/+2
2013-01-10DecoderThread: signal the client after decoder finishesMax Kellermann1-0/+2
Fixes potential dead lock bug.
2013-01-07decoder_api.h, ...: add "extern C"Max Kellermann1-3/+3
2013-01-04DecoderThread: move code to destructorMax Kellermann1-13/+0
2013-01-04DecoderInternal: move initializers to constructorMax Kellermann1-9/+3
2013-01-04decoder_*: convert to C++Max Kellermann1-2/+2
2013-01-02mapper: convert to C++Max Kellermann1-1/+1
2013-01-02{decoder,player}_thread: convert to C++Max Kellermann1-19/+11
2012-09-25decoder_control: remove MixRamp debug messagesMax Kellermann1-1/+0
These are confusing, and since MixRamp development has ceased, not useful to anybody.
2012-08-15decoder_thread: create GError for mapper failureMax Kellermann1-0/+3
Fixes crash.
2012-08-08decoder_control: add GError attributeMax Kellermann1-1/+17
2012-05-29decoder_api: log the decoder plugin nameMax Kellermann1-0/+4
2011-10-13decoder_thread: add missing stdio.h includeMax Kellermann1-0/+1
2011-10-09decoder/{pcm,dsdiff}: add missing stdio.h includeMax Kellermann1-0/+1
2011-10-05decoder_control: add attributes start_ms, end_msMax Kellermann1-1/+1
Don't read song.start_ms and song.end_ms, let the player thread manage this logic instead.
2011-09-22decoder_api: emulate SEEK command for initial seek to CUE trackMax Kellermann1-0/+2
When playing a CUE track, the player thread waited for the decoder to become ready, and then sent a SEEK command to the beginning of the CUE track. If that is near the start of the song file, and the track is short enough, the decoder could have finished decoding already at that point, and seeking fails. This commit makes this initial seek more robust: instead of letting the player thread deal with the difficult timings, let the decoder API emulate a SEEK command, and return it to the decoder plugin, as soon as the plugin finishes its initialization.