aboutsummaryrefslogtreecommitdiffstats
path: root/src/decoder/AudiofileDecoderPlugin.cxx (unfollow)
Commit message (Collapse)AuthorFilesLines
2013-10-23input_stream: rename struct to InputStreamMax Kellermann1-14/+14
2013-10-21decoder: rename the struct to "Decoder"Max Kellermann1-1/+1
2013-10-21decoder_plugin: rename struct to DecoderPluginMax Kellermann1-1/+1
2013-10-02Log: new logging library APIMax Kellermann1-13/+15
Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
2013-09-27DecoderCommand: convert to strictly-typed enumMax Kellermann1-4/+4
2013-09-05Tag, ...: move to libtag.aMax Kellermann1-1/+1
2013-09-05InputLegacy: move functions to the input_stream classMax Kellermann1-7/+8
2013-09-04util/Error: new error passing libraryMax Kellermann1-11/+11
Replaces GLib's GError.
2013-08-03audio_format: convert to C++Max Kellermann1-10/+10
2013-07-29audio_check: convert to C++Max Kellermann1-1/+1
2013-07-29tag_handler: convert to C++Max Kellermann1-1/+1
2013-07-28decoder_api: convert to C++Max Kellermann1-1/+1
2013-07-28decoder/audiofile: convert to C++Max Kellermann1-19/+25
2013-01-26input_stream: forward-declare the structMax Kellermann1-5/+5
Hide the definition from C code, to prepare the transition to C++.
2012-03-19decoder/audiofile: fix compiler warnings with libaudiofile 0.3.3Jonathan Neuschäfer1-4/+4
This might break older versions, I didn't test.
2012-02-15decoder/audiofile: fix compiler warnings with libaudiofile 0.3.3Jonathan Neuschäfer1-4/+4
This might break older versions, I didn't test.
2012-02-11decoder_plugin: scan tags with callback tableMax Kellermann1-8/+9
Pass a callback table to scan_file() and scan_stream(), instead of returning a tag object.
2011-09-17decoder/audiofile: include stdio header for SEEK_* definesTim Harder1-0/+1
The stdio header is no longer pulled in by af_vfs.h in audiofile-0.3.0.
2011-09-16input_stream: non-blocking I/OMax Kellermann1-2/+2
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.
2011-02-09general: whitespace cleanupThomas Jansen1-1/+1
Remove trailing whitespace found by this command: find -name '*.[ch]' | xargs grep "[[:space:]]$"
2011-01-29copyright year 2011Max Kellermann1-1/+1
2010-01-04renamed decoder plugin sourcesMax Kellermann1-0/+0
Make it X_decoder_plugin.c.
2010-01-04decoder_api: added function decoder_replay_gain()Max Kellermann1-1/+1
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.
2009-12-31Update copyright notices.Avuton Olrich1-1/+1
2009-12-26decoder_api: added function decoder_timestamp()Max Kellermann1-6/+3
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.
2009-12-15input_stream: return errors with GErrorMax Kellermann1-3/+13
2009-12-02audio_format: changed "bits" to "enum sample_format"Max Kellermann1-3/+23
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.
2009-11-14decoder/audio: eliminate the "bits" variableMax Kellermann1-4/+1
Pass the audiofile_setup_sample_format() result to audio_format_init_checked().
2009-11-14decoder/audiofile: moved code to audiofile_setup_sample_format()Max Kellermann1-10/+20
2009-11-14decoder: use audio_format_init_checked()Max Kellermann1-7/+9
Let the audio_check library verify the audio format in all (relevant, i.e. non-hardcoded) plugins.
2009-11-12include config.h in all sourcesMax Kellermann1-1/+2
After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue.
2009-07-19Add audio_format_init() functionDavid Woodhouse1-5/+3
It makes no difference right now, but we're about to add an endianness flag and will want to make sure it's correctly initialised every time.
2009-04-02decoder: Rename all main decoder plugins functions to *decoder_plugin.Avuton Olrich1-1/+1
2009-03-13all: Update copyright header.Avuton Olrich1-9/+8
This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
2009-03-01audiofile: added 24 bit supportMax Kellermann1-1/+8
Don't hard code the "bits" parameter to 16. Try to use the input's sample format, if possible.
2009-02-28audiofile: removed duplicate decoder_get_command() callsMax Kellermann1-12/+16
decoder_data() returns a decoder_command, no need to call decoder_get_command() twice after decoder_command().
2009-02-28audiofile: refuse to play non-seekable filesMax Kellermann1-0/+5
If an input_stream is not seekable, libaudiofile fails to play at all: Audio File Library: unrecognized audio file format [error 0] Since we know in advance whether the input_stream is seekable, just refuse to play on a non-seekable stream.
2009-02-28audiofile: no CamelCaseMax Kellermann1-9/+9
Renamed several variables and a function.
2008-12-27audiofile: don't close onput stream in libaudiofile destroy()Max Kellermann1-2/+3
The input_stream object should only be closed by the MPD core (i.e. decoder_thread.c / decoder_run()). A decoder plugin which attempts to close it will result in a segmentation fault.
2008-12-03decoder: audiofile plugin using input stream instead of fileViliam Mateicka1-15/+74
2008-11-21decoder: check audio_format_valid() in all decodersMax Kellermann1-7/+8
Refuse to play audio formats which are not supported by MPD.
2008-11-21audiofile: use GLib instead of log.hMax Kellermann1-8/+10
2008-11-18audiofile: fixed misplaced ifViliam Mateicka1-2/+1
[mk: by definition, tag_new() cannot fail - removed check]
2008-11-11decoder: return void from decode() methodsMax Kellermann1-5/+4
The stream_decode() and file_decode() methods returned a boolean, indicating whether they were able to decode the song. This is redundant, since we already know that: if decoder_initialized() has been called (and dc.state==DECODE), the plugin succeeded. Change both methods to return void.
2008-11-04decoder: removed stream_typesMax Kellermann1-1/+0
Instead of checking the stream_types bit set, we can simply check whether the methods stream_decode() and file_decode() are implemented.
2008-11-02decoder_api: pass "seekable" flag to decoder_initialized()Max Kellermann1-2/+2
Don't pass the "seekable" flag with every decoder_data() invocation. Since that flag won't change within the file, it is enough to pass it to decoder_initialized() once per file.
2008-11-01decoder: make the suffixes and mime_types arrays really constMax Kellermann1-1/+3
The strings were constant, but the pointers weren't. C syntax is somewhat tricky..
2008-11-01decoder: make all decoder_plugin structs constMax Kellermann1-1/+1
All decoder_plugin structs are initialized at compile time, and must never change.
2008-10-31decoder_api: pass constant path pointersMax Kellermann1-3/+3
2008-10-30decoder: use bool for return values and flagsMax Kellermann1-5/+6
Don't return 0/-1 on success/error, but true/false. Instead of int, use bool for storing flags.