| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Allow the plugin to allocate the GetSong() return value.
|
| |
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Reduce header dependencies.
|
| |
|
|
|
|
|
|
|
| |
Allocate a player_control object where needed, and pass it around.
Each "client" object is associated with a "player_control" instance.
This prepares multi-player support.
|
|
|
|
|
|
| |
Optionally allow all local files.
"Insecure" mode is used for printing playlists.
|
| |
|
|
|
|
| |
Return early on error, save one level of indent.
|
|
|
|
|
|
|
| |
Memory leak fix. The input_stream object passed to
playlist_list_open_stream_suffix() must be closed by the caller - this
however never happens in playlist_list_open_path(), because it does
not return it to the caller.
|
| |
|
| |
|
|
|
|
| |
Accept absolute paths if they point into the music directory.
|
|
|
|
| |
Preparation for the next patch.
|
|
|
|
|
|
|
|
| |
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).
|
| |
|
|
|
|
|
|
| |
Prepend the playlist's base URI to relative song URIs. Look up songs
in the database (if the URI refers to a local song file). Merge
existing database metadata with metadata from the playlist plugin.
|
|
|
|
|
| |
Try the playlist directory first, and if that file does not exist, try
the same relative path within the music directory.
|
| |
|
|
|
|
| |
If that fails, try opening the file as a stream.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
This patch allows the client to load a playlist file from the playlist
directory with a plugin. This can be used with the "load" command,
but the client has to pass the file name including the suffix. We
will probably use the music directory in the future, to support
playlist files inside the music directory.
|
| |
|
|
This patch integrates the playlist plugin API to the MPD core. We'll
be able to do much more in the future with that API, that's just the
beginning.
|