aboutsummaryrefslogtreecommitdiffstats
path: root/src/playlist (follow)
Commit message (Collapse)AuthorAgeFilesLines
* fs/Path: add method IsAbsolute()Max Kellermann2013-10-141-1/+2
|
* Mapper, ...: use memcmp() instead of strncmp() where appropriateMax Kellermann2013-10-141-1/+1
| | | | Micro-optimization.
* Log: new logging library APIMax Kellermann2013-10-028-37/+54
| | | | | Prepare to migrate away from GLib. Currently, we're still using GLib as a backend.
* playlist/lastfm: remove defunct Last.fm supportMax Kellermann2013-09-282-306/+0
| | | | | | This plugin has been defunct ever since Last.fm changed their protocol. Since there is no volunteer willing to fix the plugin, I'm removing it now.
* Tag, ...: move to libtag.aMax Kellermann2013-09-059-10/+10
|
* PlaylistPlugin: add interface SongEnumeratorMax Kellermann2013-09-0513-272/+91
| | | | Replaces struct playlist_provider.
* use standard snprintf() instead of GLib g_snprintf()Max Kellermann2013-09-051-1/+1
|
* conf.h: remove obsolete headerMax Kellermann2013-09-052-2/+2
| | | | | Use only ConfigData.hxx in plugin sources to reduce header dependencies.
* InputLegacy: move functions to the input_stream classMax Kellermann2013-09-057-35/+29
|
* Tag*: move libtag.a sources to src/tag/Max Kellermann2013-09-041-2/+2
|
* util/Error: new error passing libraryMax Kellermann2013-09-046-48/+48
| | | | Replaces GLib's GError.
* input_stream.h: rename to InputLegacy.hxxMax Kellermann2013-09-037-7/+7
|
* playlist/pls: use std::string instead of GStringMax Kellermann2013-08-061-9/+8
|
* playlist/EmbbeddedCue: convert to classMax Kellermann2013-08-051-27/+41
|
* playlist/lastfm: convert to classMax Kellermann2013-08-051-11/+15
|
* playlist/lastfm: allocate the lastfm_playlist object at the endMax Kellermann2013-08-051-15/+14
| | | | Simplify the error path, because the other allocations may fail.
* playlist/m3u: allocate ExtM3uPlaylist with new/deleteMax Kellermann2013-08-051-8/+9
|
* playlist/extm3u: allocate ExtM3uPlaylist with new/deleteMax Kellermann2013-08-051-10/+11
|
* *: use gcc.h macros instead of GLibMax Kellermann2013-08-043-20/+20
|
* PlaylistPlugin: pass config_param referenceMax Kellermann2013-08-042-6/+5
|
* tag: convert to C++Max Kellermann2013-07-309-33/+30
|
* tag_handler: convert to C++Max Kellermann2013-07-291-1/+1
|
* ape: convert to C++Max Kellermann2013-07-291-4/+1
|
* tag_id3: convert to C++Max Kellermann2013-07-281-1/+1
|
* song: convert header to C++Max Kellermann2013-07-2813-48/+48
|
* text_input_stream: convert to classDenis Krjuchkov2013-05-123-43/+38
|
* string_util: convert to C++Max Kellermann2013-04-091-1/+1
|
* cue_parser: convert to C++Max Kellermann2013-04-092-19/+17
|
* playlist/cue: add constructor/destructorMax Kellermann2013-04-091-11/+13
|
* uri: convert to C++Max Kellermann2013-04-082-2/+0
|
* playlist/despotify: various code simplificationsMax Kellermann2013-01-291-55/+31
|
* playlist/memory: use std::forward_list instead of GSListMax Kellermann2013-01-298-112/+45
|
* playlist/{asx,rss,soundcloud,xspf}: merge code to MemoryPlaylistProviderMax Kellermann2013-01-298-257/+162
|
* DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCondMax Kellermann2013-01-274-16/+17
|
* playlist/*: convert to C++Max Kellermann2013-01-2718-225/+260
|
* input_stream: forward-declare the structMax Kellermann2013-01-261-2/+1
| | | | Hide the definition from C code, to prepare the transition to C++.
* tag_file: convert to C++Max Kellermann2013-01-261-1/+1
|
* playlist/*: convert to C++Max Kellermann2013-01-267-42/+57
|
* input,playlist/despotify: convert to C++Max Kellermann2013-01-212-22/+28
|
* input_stream, main: remove obsolete GLib version checksMax Kellermann2012-08-141-2/+0
| | | | MPD requires GLib 2.16.
* require GLib 2.16Max Kellermann2012-07-102-2/+1
| | | | | GLib 2.16 was released more than 4 years ago. Let's remove some cruft from the glib_compat.h header, and avoid new cruft to it.
* playlist/soundcloud: libyajl2 uses size_t for string lengthsMax Kellermann2012-03-221-2/+14
| | | | Fixes build failure on 64 bit.
* playlist/soundcloud: support libyajl2Robert Vollmert2012-03-191-5/+21
| | | | [mk: backwars compatibility and autoconf check]
* playlist/soundcloud: use config_dup_block_string()Max Kellermann2012-03-011-5/+3
|
* A soundcloud playlist plugin.Robert Vollmert2012-03-012-0/+447
| | | | | | | | | | | | | | | | | | | | | | | Requires YAJL to build, and this doesn't include the necessary automake changes. Can be built using ./configure CFLAGS="-I/usr/include/yajl" LIBS="-lyajl" --enable-soundcloud Add the following to your config: playlist_plugin { name "soundcloud" enabled "true" apikey "c4c979fd6f241b5b30431d722af212e8" } Then you can stream from soundcloud using calls like: mpc load soundcloud://track/<track-id> mpc load soundcloud://playlist/<playlist-id> mpc load soundcloud://url/http://soundcloud.com/some/track/or/playlist For the last case, you can leave off the http:// or http://soundcloud.com/ .
* playlist/flac: delete this obsolete pluginMax Kellermann2012-02-122-196/+0
| | | | | The FLAC playlist plugin has been superseded by the "embcue" playlist plugin, which can read the embedded CUE sheets of all formats.
* playlist/embcue: ignore "FILE", always point to container song fileMax Kellermann2012-02-121-2/+15
| | | | | An embedded CUE sheet must always point to the song file it is contained in.
* playlist/embcue: new plugin for reading embedded cue sheetsMax Kellermann2012-02-122-0/+193
| | | | | Parses CUE data from the "CUESHEET" tag. Needs further integration in the update thread.
* cue_parser: new line based CUE sheet parserMax Kellermann2012-02-101-61/+28
| | | | To replace libcue, the unmaintained and crashy library.
* input_stream: non-blocking I/OMax Kellermann2011-09-168-36/+30
| | | | | | | | | 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.