aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-08-28DecoderControl: use std::chrono::duration for start_ms and end_msMax Kellermann4-29/+18
2014-08-28DetachedSong: use std::chrono::duration for start_ms and end_msMax Kellermann1-1/+1
2014-08-28DecoderControl: update API documentationMax Kellermann1-3/+3
2014-08-27DecoderControl: use std::chrono::duration for Seek()Max Kellermann4-9/+9
2014-08-26DecoderAPI: use std::chrono::duration for decoder_seek*()Max Kellermann8-52/+40
For type safety and code readability.
2014-08-26decoder/pcm: use integer seek timesMax Kellermann1-2/+3
2014-08-26decoder/dsf: use integer seek timesMax Kellermann1-4/+4
2014-08-26decoder/dsdiff: use integer seek timesMax Kellermann1-11/+4
2014-08-26decoder/wildmidi: use integer seek timesMax Kellermann1-2/+2
2014-08-26decoder/wavpack: use integer seek timesMax Kellermann1-2/+1
2014-08-26decoder/vorbis: use integer seek timesMax Kellermann1-2/+2
2014-08-26decoder/sndfile: use integer seek timesMax Kellermann1-12/+1
2014-08-26decoder/opus: use integer seek timesMax Kellermann1-4/+4
2014-08-26decoder/opus: remove redundant decoder_timestamp() callMax Kellermann1-5/+1
After seeking, the MPD core automatically refreshes the timestamp, and thus discards the value from decoder_timestamp().
2014-08-26decoder/mpg123: use integer seek timesMax Kellermann1-1/+1
2014-08-26decoder/mpcdec: use integer seek timesMax Kellermann1-2/+2
2014-08-26decoder/flac: use integer seek timesMax Kellermann1-2/+1
2014-08-26decoder/audiofile: use integer seek timesMax Kellermann1-2/+1
2014-08-26DecoderAPI: add decoder_seek_where_frame()Max Kellermann2-0/+30
2014-08-26decoder/mp4v2: use integer seek timesMax Kellermann1-4/+7
2014-08-26decoder/ffmpeg: use integer seek timesMax Kellermann1-3/+3
2014-08-26decoder/gme: use integer seek timesMax Kellermann1-2/+2
2014-08-26decoder/modplug: use integer seek timesMax Kellermann1-4/+1
2014-08-26decoder/mad: use integer seek timesMax Kellermann1-10/+9
Avoid roundtrips to floating point.
2014-08-26DecoderAPI: add decoder_seek_where_ms()Max Kellermann2-0/+27
Move to fixed-point integers instead of floating point.
2014-08-26decoder/mad: move duplicate code to RecoverFrameError()Max Kellermann1-20/+16
2014-08-26decoder/mad: simplify if/else chainMax Kellermann1-20/+18
2014-08-26decoder/mad: make variables more localMax Kellermann1-9/+5
2014-08-26decoder/mad: simplify "return", eliminate checkMax Kellermann1-3/+1
This check was redundant, because we could only exit the loop when ret==DECODE_OK.
2014-08-25decoder/mad: don't reset the xing structMax Kellermann1-3/+1
Not necessary.
2014-08-25decoder/mad: remove unused flag "found_xing"Max Kellermann1-3/+1
2014-08-24decoder/mad: convert enums/macros to constexprMax Kellermann1-22/+17
2014-08-24decoder/mad: make variables more localMax Kellermann1-60/+31
2014-08-23decoder/dsdiff: implement seekingMax Kellermann1-1/+32
2014-08-23decoder/dsdiff: refactor the main decoder loopMax Kellermann1-17/+4
Check for STOP before decoding the first chunk. This reduces the command latency.
2014-08-23decoder/dsdiff: add local variable "remaining_bytes"Max Kellermann1-5/+6
Remember the chunk's total size.
2014-08-23decoder/dsdiff: don't skip remaining bytesMax Kellermann1-1/+2
Nobody cares.
2014-08-23decoder/dsdiff: eliminate local variable "buffer_samples"Max Kellermann1-2/+1
2014-08-23decoder/dsdiff: support only one "DSD" chunkMax Kellermann1-21/+4
Eliminate the loop from dsdiff_stream_decode(). It makes the code complex, real-world files with multiple DSD chunks are outside of the specification, and the "chunk_size" variable would be bogus anyway.
2014-08-23decoder/dsf: implement seekingMax Kellermann1-1/+25
2014-08-23decoder/dsf: refactor the main decoder loopMax Kellermann1-19/+7
Check for STOP before decoding the first chunk. This reduces the command latency.
2014-08-23decoder/dsf: make the buffer more localMax Kellermann1-3/+2
This allows the compiler to discard buffer contents between two iterations.
2014-08-23decoder/dsf: eliminate pointless return statementMax Kellermann1-5/+4
2014-08-23decoder/dsf: use the block count internallyMax Kellermann1-10/+10
2014-08-23decoder/dsf: don't skip remaining bytesMax Kellermann1-1/+1
Nobody cares.
2014-08-23decoder/dsf: count the blocks, not the remaining bytesMax Kellermann1-2/+3
Prepare refactoring the whole plugin to use blocks instead of bytes. A block is the smallest addressable unit, and it will simplify the seeking code.
2014-08-23decoder/dsf: allow channel setups other than stereoMax Kellermann1-2/+1
This finishes the multi-channel support. Development of the feature was started with commit 02cc77cd8
2014-08-23decoder/dsf: eliminate another hard-coded stereo mode assumptionMax Kellermann1-1/+1
When calculating the upper bound using the "sample count" format header, don't assume it's stereo.
2014-08-23decoder/dsf: fix big-endian bugsMax Kellermann1-6/+8
2014-08-23decoder/dsf: compare with InputStream::GetRest() instead of ..GetSize()Max Kellermann1-5/+2