aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder (follow)
Commit message (Collapse)AuthorAgeFilesLines
* replay_gain_info: allocate the struct staticallyMax Kellermann2010-02-177-83/+51
| | | | | | Don't allocate each replay_gain_info object on the heap. Those objects who held a pointer now store a full replay_gain_info object. This reduces the number of allocations and heap fragmentation.
* ffmpeg: read more metadata.Anton Khirnov2010-02-021-1/+12
|
* decoder/flac: fix replay gain (short-circuiting "or")Tim Phipps2010-01-281-8/+13
|
* decoder/wavpack: fixed WVC URIMax Kellermann2010-01-201-4/+5
| | | | Pass the current URI to wavpack_open_wvc().
* decoder/ffmpeg: call decoder_timestamp() once per packetMax Kellermann2010-01-181-5/+5
|
* decoder/ffmpeg: merged ffmpeg_helper() into ffmpeg_decode()Max Kellermann2010-01-181-116/+67
|
* decoder/ffmpeg: optimized the stream_tag() methodMax Kellermann2010-01-181-25/+27
| | | | Don't use the function ffmpeg_helper(), don't initialize the codec.
* decoder/ffmpeg: free AVFormatContext on errorMax Kellermann2010-01-181-0/+4
| | | | Fix a memory leak in some code paths.
* decoder_api: removed function decoder_get_uri()Max Kellermann2010-01-183-26/+11
| | | | Use input_stream.uri.
* Merge release 0.15.8 from branch 'v0.15.xMax Kellermann2010-01-181-4/+34
|\ | | | | | | | | | | | | | | | | Conflicts: Makefile.am NEWS configure.ac src/decoder/ffmpeg_decoder_plugin.c src/decoder_thread.c
| * decoder/ffmpeg: added more MIME typesMax Kellermann2010-01-171-0/+6
| | | | | | | | Taken from the ffmpeg sources.
| * decoder/ffmpeg: append file name suffix to virtual stream URLMax Kellermann2010-01-171-4/+28
| | | | | | | | | | | | | | To allow libavformat to detect the format of the input file, append the suffix of the input file to the URL of the virtual stream. This specifically enables the "shorten" codec, which is supported by libavformat/raw.c, detected only by the suffix.
* | audio_format: support packed 24 bit samplesMax Kellermann2010-01-161-0/+1
| |
* | decoder/flac: support streams without STREAMINFO blockMax Kellermann2010-01-062-1/+52
| |
* | decoder/flac: pass bits_per_sample to flac_sample_format()Max Kellermann2010-01-061-3/+3
| | | | | | | | Easier to reuse the function.
* | decoder/flac: moved decoder initialization to _flac_common.cMax Kellermann2010-01-064-51/+23
| | | | | | | | | | | | Invoke decoder_initialized() in the libFLAC metadata callback. This merges code from the FLAC and the OggFLAC decoder plugin into the common library.
* | decoder/flac: remember audio_format, not stream_infoMax Kellermann2010-01-064-25/+47
| |
* | decoder/flac: removed CUE sheet supportMax Kellermann2010-01-063-359/+1
| | | | | | | | This feature has been moved to the "flac" playlist plugin.
* | decoder/flac: moved flac_tag_load() to flac_metadata.cMax Kellermann2010-01-063-53/+56
| | | | | | | | Make this code is reusable.
* | renamed decoder plugin sourcesMax Kellermann2010-01-0415-0/+0
| | | | | | | | Make it X_decoder_plugin.c.
* | decoder/mad: fix build error without libid3tagMax Kellermann2010-01-041-1/+0
| |
* | replay_gain: moved code to replay_gain_info.cMax Kellermann2010-01-041-1/+1
| |
* | decoder_api: added function decoder_replay_gain()Max Kellermann2010-01-0417-87/+63
| | | | | | | | | | | | This function replaces the replay_gain_info parameter for decoder_data(). This allows the decoder to announce replay gain changes, instead of having to pass the same object over and over.
* | input_stream: return allocated input_stream objectsMax Kellermann2010-01-011-14/+13
| | | | | | | | | | | | | | | | Major API redesign: don't let the caller allocate the input_stream object. Let each input plugin allocate its own (derived/extended) input_stream pointer. The "data" attribute can now be removed, and all input plugins simply cast the input_stream pointer to their own structure (with an "struct input_stream base" as the first attribute).
* | Update copyright notices.Avuton Olrich2009-12-3126-26/+26
| |
* | decoder: switch a bunch of plugins to stream_tag()Max Kellermann2009-12-317-110/+45
| | | | | | | | | | | | | | | | | | | | This patch changes the following decoder plugins to implement stream_tag() instead of tag_dup(): faad, ffmpeg, mad, modplug, mp4ff, mpcdec, oggflac This simplifies their code, because they do not need to take care of opening/closing the stream.
* | decoder_plugin: added method stream_tag()Max Kellermann2009-12-311-0/+1
| | | | | | | | | | This is like tag_dup(), but works with an input_stream object instead of a file path.
* | Merge vorbis+icy fixes from branch 'v0.15.x'Max Kellermann2009-12-304-4/+22
|\| | | | | | | | | | | | | | | | | Conflicts: Makefile.am NEWS configure.ac src/input/curl_input_plugin.c src/input_stream.c
| * decoder/{ffmpeg,flac,vorbis}: added more flac/vorbis MIME typesMax Kellermann2009-12-294-4/+22
| | | | | | | | | | Support deprecated MIME types such as "audio/x-ogg". Support new types such as "audio/flac".
* | Merged release 0.15.7 from branch 'v0.15.x'Max Kellermann2009-12-271-3/+2
|\| | | | | | | | | | | | | Conflicts: NEWS configure.ac src/decoder_api.c
| * decoder/wavpack: allow fine-grained seekingMax Kellermann2009-12-261-3/+2
| | | | | | | | | | First multiply the floating point return value of decoder_seek_where(), then cast to integer.
* | decoder_api: added function decoder_timestamp()Max Kellermann2009-12-2616-77/+24
| | | | | | | | | | | | Remove the data_time parameter from decoder_data(). This patch eliminates the timestamp counting in most decoder plugins, because the MPD core will do it automatically by default.
* | updated mp4ff decoder about input_stream_seekAlam Arias2009-12-161-2/+2
| |
* | input_stream: return errors with GErrorMax Kellermann2009-12-1511-26/+48
| |
* | decoder/mikmod: fixed gcc uninitialized warningMax Kellermann2009-12-141-2/+1
| | | | | | | | Removed local variable "sample_rate".
* | Merge branch 'v0.15.x'Max Kellermann2009-12-142-5/+1
|\| | | | | | | | | Conflicts: src/decoder/ffmpeg_plugin.c
| * decoder/wavpack: don't use the nonstandard "uchar" typeMax Kellermann2009-12-111-1/+1
| | | | | | | | Use the signed C99 type int8_t instead.
| * ffmpeg: don't try to force stereoMax Kellermann2009-11-301-4/+0
| | | | | | | | | | | | The plugin code tried to force libavcodec to supply stereo samples. That however has never actually worked. By removing this code, we are able to play surround files for the first time.
* | audio_format: changed "bits" to "enum sample_format"Max Kellermann2009-12-0219-43/+138
| | | | | | | | | | | | This patch prepares support for floating point samples (and probably other formats). It changes the meaning of the "bits" attribute from a bit count to a symbolic value.
* | decoder/mpcdec: set 24 bit sample formatMax Kellermann2009-11-251-1/+1
| | | | | | | | | | This fixes a regression due to a typo caused by "decoder: use audio_format_init_checked()".
* | Merged release 0.15.6 from branch 'v0.15.x'Max Kellermann2009-11-192-8/+27
|\| | | | | | | | | | | | | Conflicts: NEWS configure.ac
| * decoder/flac: fixed compiler warningMax Kellermann2009-11-191-3/+1
| | | | | | | | | | | | Removed the "vtrack" local variable (which triggered a gcc warning because it was after the newly introduced NULL check), and run strtol() on the original parameter.
| * decoder/flac: fixed NULL pointer dereference in CUE codeMax Kellermann2009-11-181-0/+2
| | | | | | | | The function flac_vtrack_tnum() was missing a strrchr()==NULL check.
| * decoder/ffmpeg: align the output bufferMax Kellermann2009-11-151-5/+24
| | | | | | | | | | | | On some platforms, libavcodec wants the output buffer aligned to 16 bytes (because it uses SSE/Altivec internally). It will segfault when you don't obey this rule.
* | decoder/audio: eliminate the "bits" variableMax Kellermann2009-11-141-4/+1
| | | | | | | | | | Pass the audiofile_setup_sample_format() result to audio_format_init_checked().
* | decoder/audiofile: moved code to audiofile_setup_sample_format()Max Kellermann2009-11-141-10/+20
| |
* | decoder/modplug: count frame positionMax Kellermann2009-11-141-13/+11
| | | | | | | | | | Don't maintain the current time stamp in a floating point variable, because this is subject to rounding errors.
* | decoder/modplug: floating point division for song durationMax Kellermann2009-11-141-3/+1
| | | | | | | | More exact total time.
* | decoder/modplug: check ModPlug_Read() < 0Max Kellermann2009-11-141-3/+1
| | | | | | | | | | Negative return values are not documented here, but since the function prototype is signed, let's be sure.
* | decoder/mikmod: count frame positionMax Kellermann2009-11-141-8/+6
| | | | | | | | | | Don't maintain the current time stamp in a floating point variable, because this is subject to rounding errors.