aboutsummaryrefslogtreecommitdiffstats
path: root/src/DecoderAPI.cxx (follow)
Commit message (Collapse)AuthorAgeFilesLines
* DetachedSong: fork of struct SongMax Kellermann2014-01-091-2/+2
| | | | | | 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.
* DecoderAPI: add function decoder_read_full()Max Kellermann2013-12-141-0/+18
| | | | Move code from the "mad" plugin.
* DecoderAPI: add function decoder_skip()Max Kellermann2013-12-141-0/+16
| | | | Move code from the "mad" plugin.
* include cleanup using iwyuMax Kellermann2013-11-281-1/+0
|
* PcmConvert: add methods Open(), Close()Max Kellermann2013-11-131-3/+7
| | | | | Replaces Reset() and eliminates the AudioFormat parameters from the Convert() method.
* DecoderAPI: stop decoder on MPD errorMax Kellermann2013-11-131-0/+4
| | | | | This commit adds the basic infrastructure for reporting bugs from DecoderAPI.cxx via DecoderThread.cxx to DecoderControl.
* DecoderInternal: allocate PcmConvert dynamicallyMax Kellermann2013-11-131-12/+21
| | | | Reduce header dependencies and allow it to be nullptr to disable it.
* DecoderInternal: move functions into the classMax Kellermann2013-11-131-6/+6
|
* DecoderAPI: add missing math.h includeMax Kellermann2013-11-111-0/+1
|
* DecoderAPI: log without holding mutexMax Kellermann2013-11-081-2/+2
|
* DecoderInternal: wake up the player thread in _flush_chunk()Max Kellermann2013-11-061-4/+0
| | | | Merge duplicate code.
* MusicChunk: return WritableBufferMax Kellermann2013-10-281-7/+8
|
* decoder_control: rename to DecoderControlMax Kellermann2013-10-281-10/+10
|
* DecoderControl: move code/attributes to new class MixRampInfoMax Kellermann2013-10-261-4/+2
|
* ReplayGainInfo: refactor to a classMax Kellermann2013-10-251-5/+6
|
* ReplayGainInfo: use CamelCase for struct nameMax Kellermann2013-10-251-2/+2
|
* input_stream: rename struct to InputStreamMax Kellermann2013-10-231-12/+11
|
* decoder: rename the struct to "Decoder"Max Kellermann2013-10-211-90/+86
|
* *: use references instead of pointersMax Kellermann2013-10-191-83/+82
|
* *: use nullptr instead of NULLMax Kellermann2013-10-191-38/+38
|
* replay_gain_*.h: rename to *.hxxMax Kellermann2013-10-021-1/+1
|
* Log: new logging library APIMax Kellermann2013-10-021-13/+10
| | | | | Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
* DecoderControl: convert "enum decoder_state" to strictly-typed enumMax Kellermann2013-09-271-8/+8
|
* DecoderCommand: convert to strictly-typed enumMax Kellermann2013-09-271-25/+25
|
* MusicBuffer: expose the C++ APIMax Kellermann2013-09-261-2/+2
|
* MusicPipe: expose the C++ APIMax Kellermann2013-09-261-2/+2
|
* InputLegacy: move functions to the input_stream classMax Kellermann2013-09-051-7/+7
|
* util/Error: new error passing libraryMax Kellermann2013-09-041-12/+10
| | | | Replaces GLib's GError.
* *: use gcc.h macros instead of GLibMax Kellermann2013-08-041-7/+7
|
* audio_format: convert to C++Max Kellermann2013-08-031-15/+13
|
* DecoderAPI: pass rvalue reference to decoder_tag()Max Kellermann2013-07-311-4/+3
| | | | Avoid duplicating the tag.
* tag: convert to C++Max Kellermann2013-07-301-22/+19
|
* song: convert header to C++Max Kellermann2013-07-281-1/+1
|
* decoder_api: convert to C++Max Kellermann2013-07-281-1/+1
|
* pcm_convert: convert to C++Max Kellermann2013-01-311-4/+5
|
* audio_{parser,config}: convert to C++Max Kellermann2013-01-301-5/+1
|
* InputStream: store references instead of pointersMax Kellermann2013-01-281-1/+1
|
* DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCondMax Kellermann2013-01-271-7/+7
|
* input_stream: forward-declare the structMax Kellermann2013-01-261-0/+1
| | | | Hide the definition from C code, to prepare the transition to C++.
* DecoderControl: move functions into the classMax Kellermann2013-01-211-9/+9
|
* decoder_api.h, ...: add "extern C"Max Kellermann2013-01-071-2/+2
|
* DecoderAPI: don't use replay_gain_get_real_mode()Max Kellermann2013-01-051-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.
* DecoderAPI: _replay_gain() returns voidMax Kellermann2013-01-051-7/+3
| | | | | | Let the function decoder_replay_gain() update decoder_control::replay_gain_db instead of letting each decoder plugin take care for that.
* MusicChunk: move functions to methodsMax Kellermann2013-01-041-5/+5
|
* buffer, pipe: convert to C++Max Kellermann2013-01-041-3/+3
|
* decoder_*: convert to C++Max Kellermann2013-01-041-0/+569