Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | decoder/ffmpeg: support planar audio | Max Kellermann | 2012-10-05 | 1 | -0/+6 |
| | | | | Implements Mantis feature request 3582. | ||||
* | decoder/ffmpeg: fix playback of planar PCM data | Max Kellermann | 2012-10-05 | 1 | -8/+13 |
| | | | | | Interleaving was completely wrong. This code was never used, so it didn't have an effect. | ||||
* | decoder/ffmpeg: move code to copy_interleave_frame2() | Max Kellermann | 2012-10-05 | 1 | -5/+14 |
| | |||||
* | decoder/ffmpeg: ignore negative time stamps | Max Kellermann | 2012-10-05 | 1 | -1/+1 |
| | | | | Works around assertion failure in decoder_timestamp(). | ||||
* | decoder/ffmpeg: show unsupported sample format name | Max Kellermann | 2012-10-05 | 1 | -2/+13 |
| | | | | Use av_get_sample_fmt_string() to obtain a human-readable string. | ||||
* | decoder/ffmpeg: pass AVSampleFormat to ffmpeg_sample_format() | Max Kellermann | 2012-10-05 | 1 | -4/+9 |
| | | | | API simplification. | ||||
* | decoder/ffmpeg: remove duplicate sample format error message | Max Kellermann | 2012-10-05 | 1 | -1/+6 |
| | |||||
* | Merge branch 'v0.16.x' | Max Kellermann | 2012-05-29 | 1 | -2/+4 |
|\ | | | | | | | | | Conflicts: NEWS | ||||
| * | decoder/ffmpeg: improve "decoding failed" message | Jonathan Neuschäfer | 2012-05-29 | 1 | -1/+1 |
| | | | | | | | | | | "Frame skipped" might cause the impression that the decoding of a whole song failed. | ||||
| * | decoder/ffmpeg: add webm as a supported format | Jonathan Neuschäfer | 2012-05-29 | 1 | -1/+3 |
| | | |||||
| * | decoder/ffmpeg: read the "year" tag | Max Kellermann | 2012-02-13 | 1 | -1/+1 |
| | | | | | | | | | | | | This was disabled when compiled with a new ffmpeg version. Older ffmpeg versions used it explicitly, while newer ones may pass it through from the codec. | ||||
* | | decoder_plugin: scan tags with callback table | Max Kellermann | 2012-02-11 | 1 | -15/+16 |
| | | | | | | | | | | Pass a callback table to scan_file() and scan_stream(), instead of returning a tag object. | ||||
* | | decoder/ffmpeg: move code to ffmpeg_metadata.c | Max Kellermann | 2012-02-11 | 1 | -46/+1 |
| | | |||||
* | | decoder/ffmpeg: remove AV_VERSION_INT definition | Max Kellermann | 2012-02-11 | 1 | -5/+0 |
| | | | | | | | | All supported ffmpeg/libav versions have this. | ||||
* | | 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-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. | ||||
* | | input_stream: non-blocking I/O | Max Kellermann | 2011-09-16 | 1 | -2/+3 |
| | | | | | | | | | | | | | | | | | | 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. | ||||
| * | decoder/ffmpeg: explicitly specify the current stream for seeking | Max Kellermann | 2011-09-15 | 1 | -2/+11 |
| | | | | | | | | | | Use AVStream.time_base to convert the decoder_seek_where() value, and pass the current stream number to av_seek_frame(). | ||||
| * | decoder/ffmpeg: don't require key frame for seeking | Max Kellermann | 2011-09-15 | 1 | -1/+2 |
| | | | | | | | | Use flag AV_TIME_BASE. | ||||
| * | decoder/ffmpeg: higher precision timestamps | Max Kellermann | 2011-09-15 | 1 | -1/+2 |
| | | |||||
| * | decoder/ffmpeg: move formula to time_from_ffmpeg() | Max Kellermann | 2011-09-15 | 1 | -2/+10 |
| | | |||||
| * | decoder/ffmpeg: add local variable "av_stream" | Max Kellermann | 2011-09-15 | 1 | -3/+4 |
| | | | | | | | | Code simplification. | ||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-07-19 | 1 | -7/+47 |
|\| | | | | | | | | | | | Conflicts: NEWS configure.ac | ||||
| * | decoder/ffmpeg: use avformat_open_input() if available | Max Kellermann | 2011-07-18 | 1 | -4/+35 |
| | | | | | | | | av_open_input_stream() has been deprecated. | ||||
| * | decoder: use AVDictionary instead of AVMetadata | Max Kellermann | 2011-07-18 | 1 | -1/+14 |
| | | | | | | | | AVMetadata has been deprecated. | ||||
| * | ffmpeg: workaround for semantic API change in recent ffmpeg versions | oblique | 2011-07-03 | 1 | -2/+2 |
| | | |||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-06-03 | 1 | -0/+9 |
|\| | | | | | | | | | Conflicts: src/decoder/ffmpeg_decoder_plugin.c | ||||
| * | decoder/ffmpeg: use avcodec_decode_audio3() if available | Max Kellermann | 2011-05-09 | 1 | -1/+22 |
| | | | | | | | | | | avcodec_decode_audio3() has been added in libavformat 52.25.0, and the predecessor avcodec_decode_audio2() has been deprecated. |