| Commit message (Collapse) | Author | Files | Lines |
|
Pass a callback table to scan_file() and scan_stream(), instead of
returning a tag object.
|
|
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.
|
|
|
|
Make it X_decoder_plugin.c.
|
|
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.
|
|
|
|
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.
|
|
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.
|
|
|
|
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.
|
|
Don't maintain the current time stamp in a floating point variable,
because this is subject to rounding errors.
|
|
More exact total time.
|
|
Negative return values are not documented here, but since the function
prototype is signed, let's be sure.
|
|
Let the audio_check library verify the audio format in all (relevant,
i.e. non-hardcoded) plugins.
|
|
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.
|
|
|
|
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.
|
|
|
|
|
|
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.
|
|
EOF is checked by input_stream_read() (decoder_read() here). Don't do
it twice. The check was wrong anyway, it was reversed.
|
|
When input_stream_read() returns 0, and input_stream_eof() returns
false, an I/O error has occured. Skip this song.
|
|
|
|
Don't enlarge the GByteArray when the size limit may overflow in this
operation; check the size limit first.
|
|
The local variable "total_len" is superfluous because GByteArray
always knows its size.
|
|
The input_stream API sets size to -1 when the size of the resource is
not known. The modplug decoder checked for size==0, which would be an
empty file.
|
|
Don't include utils.h and log.h, they are relics from the past.
|
|
Make sure that log messages are decorated correctly.
|
|
Don't write CPP if you can write C.
|
|
You are allowed to call decoder_read() with decoder==NULL. It is a
convenience function provided by the decoder API. Don't manually fall
back to input_stream_read().
|
|
alternative settings must be set before the file
is loaded, otherwise they won't be respected.
|
|
|