Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | decoder/gme: convert runtime check to assertion | Max Kellermann | 2012-02-11 | 1 | -21/+22 | |
| | | | | | | | | | | When gme_track_info() returns with success, then the gme_info_t pointer must be set. | |||||
* | | decoder/ffmpeg: use the tag_table library | Max Kellermann | 2012-02-11 | 1 | -13/+9 | |
| | | ||||||
* | | decoder/ffmpeg: move code to ffmpeg_metadata.c | Max Kellermann | 2012-02-11 | 3 | -46/+106 | |
| | | ||||||
* | | decoder/ffmpeg: remove AV_VERSION_INT definition | Max Kellermann | 2012-02-11 | 1 | -5/+0 | |
| | | | | | | | | All supported ffmpeg/libav versions have this. | |||||
* | | decoder/flac: check for errors only after _process_single() | Max Kellermann | 2012-02-11 | 1 | -8/+6 | |
| | | | | | | | | The only other libFLAC call (seek) does not produce fatal errors. | |||||
* | | decoder/flac: symmetric FLAC__stream_decoder_finish() calls | Max Kellermann | 2012-02-11 | 1 | -1/+3 | |
| | | | | | | | | | | Call it in the function that also invokved FLAC__stream_decoder_init_*(). | |||||
* | | decoder/flac: use error messages from libFLAC | Max Kellermann | 2012-02-11 | 3 | -44/+10 | |
| | | ||||||
* | | decoder/flac: eliminate the remaining "gotos" | Max Kellermann | 2012-02-11 | 1 | -42/+54 | |
| | | | | | | | | https://www.xkcd.com/292/ | |||||
* | | decoder/{vorbis,flac}: use the tag_table library | Max Kellermann | 2012-02-11 | 2 | -21/+21 | |
| | | ||||||
* | | tag_table: convert to a struct | Max Kellermann | 2012-02-11 | 1 | -5/+6 | |
| | | | | | | | | | | The struct is smaller because it is sparse. Its traversal is also more efficient. | |||||
* | | decoder/vorbis: move code to vorbis_comment.c | Max Kellermann | 2012-02-11 | 3 | -103/+167 | |
| | | ||||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2012-02-04 | 1 | -34/+36 | |
|\| | | | | | | | | | | | | | Conflicts: src/decoder/ffmpeg_decoder_plugin.c test/read_tags.c test/run_decoder.c | |||||
| * | decoder/ffmpeg: use AV_SAMPLE_FMT_* if available | Max Kellermann | 2012-02-03 | 1 | -0/+8 | |
| | | | | | | | | | | Implements support for libavcodec 0.9, which removes the compatibility macros SAMPLE_FMT_* | |||||
| * | decoder/ffmpeg: use sentinel for the ffmpeg_tag_maps table | Max Kellermann | 2012-02-03 | 1 | -3/+6 | |
| | | | | | | | | Minor optimisation. | |||||
| * | decoder/ffmpeg: support all MPD tags | Max Kellermann | 2012-02-03 | 1 | -12/+5 | |
| | | | | | | | | | | Use the tag_item_names table to look up the names of all MPD tags, and remove the duplicate entries from ffmpeg_tag_maps. | |||||
| * | decoder/ffmpeg: pass tag_type and name to _copy_metadata() | Max Kellermann | 2012-02-03 | 1 | -5/+6 | |
| | | | | | | | | Allow using this function without the ffmpeg_tag_map struct. | |||||
| * | decoder/ffmpeg: merge code to _copy_dictionary() | Max Kellermann | 2012-02-03 | 1 | -6/+11 | |
| | | | | | | | | Eliminate some duplicate code. | |||||
| * | decoder/ffmpeg: add macros emulating AVDictionary | Max Kellermann | 2012-02-03 | 1 | -13/+7 | |
| | | | | | | | | Move the #ifdefs out of _copy_metadata(). | |||||
| * | decoder/ffmpeg: _copy_metadata() returns void | Max Kellermann | 2012-02-03 | 1 | -3/+1 | |
| | | | | | | | | No interest in this return value. | |||||
* | | decoder/ffmpeg: remove debug code | Max Kellermann | 2012-01-24 | 1 | -5/+0 | |
| | | ||||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2012-01-12 | 1 | -3/+7 | |
|\| | | | | | | | | | Conflicts: src/decoder/ffmpeg_decoder_plugin.c | |||||
| * | decoder/ffmpeg: check libavutil version for AVDictionaryEntry | Max Kellermann | 2012-01-12 | 1 | -1/+5 | |
| | | | | | | | | Require libavutil 51.5.0. | |||||
| * | decoder/ffmpeg: raise version dependency for avformat_find_stream_info() | Max Kellermann | 2012-01-12 | 1 | -2/+2 | |
| | | | | | | | | | | This function was added when the libavformat version was 53.2.0, but the actual release 53.2.0 did not have it. | |||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2012-01-05 | 1 | -4/+111 | |
|\| | | | | | | | | | | | Conflicts: src/decoder/ffmpeg_decoder_plugin.c src/input/ffmpeg_input_plugin.c | |||||
| * | decoder/ffmpeg: support libavformat 0.8 | Max Kellermann | 2012-01-05 | 1 | -2/+46 | |
| | | ||||||
| * | decoder/ffmpeg: use avcodec_decode_audio4(), support libavcodec 0.8 | Max Kellermann | 2012-01-04 | 1 | -1/+58 | |
| | | ||||||
| * | decoder/ffmpeg: include libavutil/mathematics.h | Max Kellermann | 2012-01-04 | 1 | -0/+1 | |
| | | | | | | | | Needed for av_rescale_q() in ffmpeg 0.8. | |||||
| * | decoder/ffmpeg: use avcodec_open2() on newer ffmpeg versions | Max Kellermann | 2012-01-04 | 1 | -1/+6 | |
| | | | | | | | | avcodec_open() has been deprecated. | |||||
| * | decoder/ffpmeg: don't use av_metadata_conv() in ffmpeg 0.7 | Max Kellermann | 2012-01-04 | 1 | -0/+2 | |
| | | | | | | | | It's a no-op and deprecated. | |||||
| * | decoder/ffmpeg: use AVIOContext instead of ByteIOContext | Max Kellermann | 2012-01-04 | 1 | -0/+8 | |
| | | ||||||
* | | command: new command "seekcur" | Max Kellermann | 2011-12-24 | 1 | -0/+5 | |
| | | | | | | | | For simpler seeking within current song. | |||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-12-13 | 1 | -0/+6 | |
|\| | | | | | | | | | | | Conflicts: NEWS configure.ac | |||||
| * | decoder/mp4ff: work around assertion failure in read() callback | Max Kellermann | 2011-12-13 | 1 | -0/+6 | |
| | | | | | | | | | | This workaround leads to an infinite loop instead of an assertion failure, but hey, now it's libmp4ff's fault. | |||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-11-28 | 1 | -8/+12 | |
|\| | | | | | | | | | | | | | | | | | | | Conflicts: Makefile.am NEWS configure.ac src/encoder/flac_encoder.c src/log.c src/pcm_buffer.c | |||||
| * | decoder/ffmpeg: work around bogus channel count | Max Kellermann | 2011-11-28 | 1 | -8/+12 | |
| | | | | | | | | | | Initialize the audio_format before calling avcodec_open(), because avcodec_open() will fill bogus values. | |||||
* | | decoder/dsdiff: provide floating point samples | Max Kellermann | 2011-10-20 | 1 | -30/+3 | |
| | | | | | | | | | | Eliminate the conversion to integer samples, the MPD core can do this now. | |||||
* | | decoder/wavpack: read float samples as-is, don't convert to integer | Max Kellermann | 2011-10-20 | 1 | -5/+4 | |
| | | | | | | | | | | For MPD's new floating point support: when a decoded wavpack file needs to be resampled, don't convert float to int and back to float. | |||||
* | | audio_format: basic support for floating point samples | Max Kellermann | 2011-10-20 | 1 | -0/+1 | |
| | | | | | | | | | | Support for conversion from float to 16, 24 and 32 bit integer samples. | |||||
* | | decoder/pcm: support reverse byte order | Max Kellermann | 2011-10-10 | 1 | -3/+21 | |
| | | ||||||
* | | decoder/{pcm,dsdiff}: add missing stdio.h include | Max Kellermann | 2011-10-09 | 2 | -0/+2 | |
| | | ||||||
* | | Merge commit 'release-0.16.5' | Max Kellermann | 2011-10-09 | 1 | -1/+1 | |
|\| | | | | | | | | | | | Conflicts: NEWS configure.ac | |||||
| * | decoder/wavpack: don't call WavpackGetMode() twice | Max Kellermann | 2011-10-08 | 1 | -1/+1 | |
| | | | | | | | | Use local variable "is_float". | |||||
* | | decoder/dsdiff: add option "lsbitfirst" | Max Kellermann | 2011-10-07 | 1 | -1/+11 | |
| | | | | | | | | Defaults to "no", which fixes the noise problems. | |||||
* | | decoder/dsdiff: add documentation | Max Kellermann | 2011-10-07 | 1 | -0/+7 | |
| | | ||||||
* | | decoder/dsdiff: new decoder plugin | Max Kellermann | 2011-10-04 | 2 | -0/+510 | |
| | | | | | | | | | | Doesn't seem to work yet, getting just noise from a test file. Seeking isn't implemented yet. | |||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-09-17 | 1 | -0/+1 | |
|\| | ||||||
| * | decoder/audiofile: include stdio header for SEEK_* defines | Tim Harder | 2011-09-17 | 1 | -0/+1 | |
| | | | | | | | | The stdio header is no longer pulled in by af_vfs.h in audiofile-0.3.0. | |||||
* | | input_stream: non-blocking I/O | Max Kellermann | 2011-09-16 | 12 | -24/+32 | |
| | | | | | | | | | | | | | | | | | | Add GMutex, GCond attributes which will be used by callers to conditionally wait on the stream. Remove the (now-useless) plugin method buffer(), wait on GCond instead. Lock the input_stream before each method call. Do the same with the playlist plugins. | |||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-09-15 | 1 | -8/+30 | |
|\| | | | | | | | | | | | Conflicts: NEWS configure.ac | |||||
| * | decoder/ffmpeg: flush the codec after seeking | Max Kellermann | 2011-09-15 | 1 | -1/+3 | |
| | | | | | | | | | | Let the codec start with fresh buffers. This should fix the remaining seeking issues. |