aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* | decoder/dsf: fix noise at end of malformed fileMax Kellermann2014-08-211-15/+7
| | | | | | | | | | | | Read one block at a time. This discards the last partial block, which cannot be interleaved anyway. Previously, uninitialised memory was used to interleave the last block, which generated some noise.
* | decoder/dsf: eliminate temporary bufferMax Kellermann2014-08-211-12/+7
| | | | | | | | | | Convert into a second buffer that gets passed to decoder_data() without copying back to the first buffer.
* | decoder/dsf: add constant DSF_BLOCK_SIZEMax Kellermann2014-08-211-4/+6
| |
* | decoder/dsf: use size_t loop variables when the limit is a size_tMax Kellermann2014-08-211-2/+2
| |
* | decoder/dsf: use memcpy()Max Kellermann2014-08-211-4/+3
| |
* | decoder/dsf: make the "scratch" buffer localMax Kellermann2014-08-211-6/+5
| | | | | | | | | | This allows the compiler to discard buffer contents between two function calls.
* | Merge branch 'v0.18.x'Max Kellermann2014-08-212-2/+2
|\|
| * decoer/dsdiff: fix endless loop on malformed fileMax Kellermann2014-08-211-1/+1
| | | | | | | | Same bug as in the previous commit.
| * decoer/dsf: fix endless loop on malformed fileMax Kellermann2014-08-211-1/+1
| | | | | | | | | | | | | | When the data chunk size is not a multiple of the frame size, the last partial frame lead to an endless loop. We fix this by checking chunk_sze>=frame instead of chunk_sze>0. This way, the partial frame is simply skipped.
* | decoder/dsf: remove unused attribute "id3_size"Max Kellermann2014-08-201-1/+0
| |
* | decoder/DsdLib: use offset_type instead of uint64_tMax Kellermann2014-08-194-27/+26
| |
* | InputStream: move typedef offset_type to Offset.hxxMax Kellermann2014-08-1913-29/+31
| | | | | | | | Reduce header dependencies.
* | InputStream: make offset_type unsignedMax Kellermann2014-08-191-3/+0
| |
* | decoder/wavpack: add local reference variablesMax Kellermann2014-08-191-8/+21
| |
* | decoder/sndfile: check InputStream::KnownSize()Max Kellermann2014-08-191-0/+3
| |
* | decoder/pcm: check InputStream::KnownSize()Max Kellermann2014-08-191-3/+2
| |
* | decoder/mpcdec: check InputStream::KnownSize()Max Kellermann2014-08-191-0/+3
| |
* | decoder/modplug: check InputStream::KnownSize()Max Kellermann2014-08-191-13/+18
| |
* | decoder/mad: check InputStream::KnownSize()Max Kellermann2014-08-191-2/+2
| |
* | decoder/ffmpeg: check InputStream::KnownSize()Max Kellermann2014-08-191-0/+3
| |
* | decoder/faad: remove unnecessary cast to size_tMax Kellermann2014-08-191-3/+2
| |
* | decoder/faad: remove size!=0 checkMax Kellermann2014-08-191-1/+1
| | | | | | | | | | Since we already checked InputStream::KnownSize(), we can assume that GetSize() returns a valid value, and this check is obsolete.
* | decoder/faad: check InputStream::KnownSize()Max Kellermann2014-08-191-2/+6
| | | | | | | | | | Replace the bogus GetSize() check and call GetSize() only when necessary.
* | decoder/faad: call GetSize() only when neededMax Kellermann2014-08-191-3/+2
| |
* | decoder/DsdLib: make variables more localMax Kellermann2014-08-191-9/+3
| |
* | decoder/DsdLib: use fixed-length ID3 bufferMax Kellermann2014-08-191-2/+2
| | | | | | | | Variable-length arrays are not allowed in C++.
* | decoder/DsdLib: check InputStream::KnownSize()Max Kellermann2014-08-191-1/+1
| |
* | decoder/dsf: check InputStream::KnownSize()Max Kellermann2014-08-191-3/+5
| |
* | decoder/dsf: remove unnecessary ID3 offset checkMax Kellermann2014-08-191-5/+1
| | | | | | | | | | If the offset is out of range, the seek will simply fail. Not a problem.
* | decoder/audiofile: check InputStream::KnownSize()Max Kellermann2014-08-191-2/+2
| | | | | | | | | | The plugin assumes that the size is known, but does not verify it at runtime.
* | {input,decoder}/ffmpeg: move ffmpeg_domain to lib/ffmpeg/Domain.cxxMax Kellermann2014-08-181-2/+1
| | | | | | | | Eliminate duplicate definition (in input plugin and decoder plugin).
* | decoder/dsf: Allow up to DSD512. Enable DSD rates based on Fs=48kHzJurgen Kramer2014-08-163-1/+27
| |
* | Report bitrate for DSF and DSDIFF DSD decodersJurgen Kramer2014-08-162-4/+8
| |
* | decoder/dsf: fix indentMax Kellermann2014-08-161-3/+3
| |
* | Merge branch 'v0.18.x'Max Kellermann2014-08-161-0/+9
|\|
| * decoder/ffmpeg: use avcodec_descriptor_get() to determine codec nameMax Kellermann2014-08-131-0/+9
| | | | | | | | | | | | In version 11, both ffmpeg and libav deprecate AVCodecContext::codec_name. The function avcodec_descriptor_get() has been introduced long ago.
* | PcmConvert: Convert() returns ConstBufferMax Kellermann2014-08-121-3/+6
| |
* | MusicChunk: rename struct to MusicChunkMax Kellermann2014-08-124-6/+7
| |
* | decoder/Mp4v2: fix crash with undefined errorAndrée Ekroth2014-08-081-6/+4
| | | | | | | | | | | | | | | | | | When no track is found the error is now properly set. Previously the calling function tried to log an undefined error, which resulted in a crash. MPD falls back to ffmpeg for unsupported tracks, such as ALAC. This should fix issue 4051.
* | decoder/Mp4v2: add MP4v2 decoder pluginAndrée Ekroth2014-08-073-0/+355
| | | | | | | | | | This plugin uses the MP4v2 library to play mp4/m4a files. It is limited to file_decode.
* | decoder/dsdiff: move artist/title/id3 offsets out of DsdiffMetaDataMax Kellermann2014-07-121-22/+14
| | | | | | | | They are only used inside dsdiff_read_metadata_extra().
* | Merge branch 'v0.18.x'Max Kellermann2014-07-121-12/+9
|\|
| * decoder/dsdiff: simplify dsdlib_skip() callMax Kellermann2014-07-121-4/+3
| |
| * decoder/dsdiff: simplify loop condition, merge branchesMax Kellermann2014-07-121-7/+2
| |
| * decoder/dsdiff: ignore garbage null byte at end of fileMax Kellermann2014-07-121-1/+1
| | | | | | | | | | Failure to read another chunk header is not fatal. Continue to read metadata.
| * decoder/dsdiff: fix metadata parser bug (uninitialized variables)Max Kellermann2014-07-121-1/+4
| |
* | DecoderBuffer: implement _skip() using decoder_skip()Max Kellermann2014-07-121-17/+8
| |
* | DecoderBuffer: add method _need()Max Kellermann2014-07-123-31/+42
| | | | | | | | Move code from the FAAD decoder plugin.
* | DecoderBuffer: remove unused method _is_full()Max Kellermann2014-07-122-10/+0
| |
* | decoder/faad: eliminate the adts_find_frame() loopMax Kellermann2014-07-121-5/+2
| | | | | | | | | | This loop is completely unnecessary. We just need to find the first ADTS frame and feed it into NeAACDecInit().