aboutsummaryrefslogtreecommitdiffstats
path: root/src/DecoderAPI.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-01-13copyright year 2014Max Kellermann1-1/+1
2014-01-09DetachedSong: fork of struct SongMax Kellermann1-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.
2013-12-14DecoderAPI: add function decoder_read_full()Max Kellermann1-0/+18
Move code from the "mad" plugin.
2013-12-14DecoderAPI: add function decoder_skip()Max Kellermann1-0/+16
Move code from the "mad" plugin.
2013-11-28include cleanup using iwyuMax Kellermann1-1/+0
2013-11-13PcmConvert: add methods Open(), Close()Max Kellermann1-3/+7
Replaces Reset() and eliminates the AudioFormat parameters from the Convert() method.
2013-11-13DecoderAPI: stop decoder on MPD errorMax Kellermann1-0/+4
This commit adds the basic infrastructure for reporting bugs from DecoderAPI.cxx via DecoderThread.cxx to DecoderControl.
2013-11-13DecoderInternal: allocate PcmConvert dynamicallyMax Kellermann1-12/+21
Reduce header dependencies and allow it to be nullptr to disable it.
2013-11-13DecoderInternal: move functions into the classMax Kellermann1-6/+6
2013-11-11DecoderAPI: add missing math.h includeMax Kellermann1-0/+1
2013-11-08DecoderAPI: log without holding mutexMax Kellermann1-2/+2
2013-11-06DecoderInternal: wake up the player thread in _flush_chunk()Max Kellermann1-4/+0
Merge duplicate code.
2013-10-28MusicChunk: return WritableBufferMax Kellermann1-7/+8
2013-10-28decoder_control: rename to DecoderControlMax Kellermann1-10/+10
2013-10-26DecoderControl: move code/attributes to new class MixRampInfoMax Kellermann1-4/+2
2013-10-25ReplayGainInfo: refactor to a classMax Kellermann1-5/+6
2013-10-25ReplayGainInfo: use CamelCase for struct nameMax Kellermann1-2/+2
2013-10-23input_stream: rename struct to InputStreamMax Kellermann1-12/+11
2013-10-21decoder: rename the struct to "Decoder"Max Kellermann1-90/+86
2013-10-19*: use references instead of pointersMax Kellermann1-83/+82
2013-10-19*: use nullptr instead of NULLMax Kellermann1-38/+38
2013-10-02replay_gain_*.h: rename to *.hxxMax Kellermann1-1/+1
2013-10-02Log: new logging library APIMax Kellermann1-13/+10
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
2013-09-27DecoderControl: convert "enum decoder_state" to strictly-typed enumMax Kellermann1-8/+8
2013-09-27DecoderCommand: convert to strictly-typed enumMax Kellermann1-25/+25
2013-09-26MusicBuffer: expose the C++ APIMax Kellermann1-2/+2
2013-09-26MusicPipe: expose the C++ APIMax Kellermann1-2/+2
2013-09-05InputLegacy: move functions to the input_stream classMax Kellermann1-7/+7
2013-09-04util/Error: new error passing libraryMax Kellermann1-12/+10
Replaces GLib's GError.
2013-08-04*: use gcc.h macros instead of GLibMax Kellermann1-7/+7
2013-08-03audio_format: convert to C++Max Kellermann1-15/+13
2013-07-31DecoderAPI: pass rvalue reference to decoder_tag()Max Kellermann1-4/+3
Avoid duplicating the tag.
2013-07-30tag: convert to C++Max Kellermann1-22/+19
2013-07-28song: convert header to C++Max Kellermann1-1/+1
2013-07-28decoder_api: convert to C++Max Kellermann1-1/+1
2013-01-31pcm_convert: convert to C++Max Kellermann1-4/+5
2013-01-30audio_{parser,config}: convert to C++Max Kellermann1-5/+1
2013-01-28InputStream: store references instead of pointersMax Kellermann1-1/+1
2013-01-27DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCondMax Kellermann1-7/+7
2013-01-26input_stream: forward-declare the structMax Kellermann1-0/+1
Hide the definition from C code, to prepare the transition to C++.
2013-01-21DecoderControl: move functions into the classMax Kellermann1-9/+9
2013-01-07decoder_api.h, ...: add "extern C"Max Kellermann1-2/+2
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 Kellermann1-7/+3
Let the function decoder_replay_gain() update decoder_control::replay_gain_db instead of letting each decoder plugin take care for that.
2013-01-04MusicChunk: move functions to methodsMax Kellermann1-5/+5
2013-01-04buffer, pipe: convert to C++Max Kellermann1-3/+3
2013-01-04decoder_*: convert to C++Max Kellermann1-12/+14
2012-03-21audio_format: remove the reverse_endian attributeMax Kellermann1-3/+0
Eliminate support for reverse endian samples from the MPD core. This moves a lot of complexity to the plugins that really need it (only ALSA and CDIO currently).
2012-02-13decoder_api: check state before emitting initial seek commandMax Kellermann1-0/+6
This fixes seeking in the vorbis decoder during MPD startup.
2011-11-27decoder_api: cancel initial seek when song is not seekableMax Kellermann1-0/+6
Fixes assertion failure.