Commit Graph

239 Commits

Author SHA1 Message Date
Mario Di Raimondo ffa676f577 playlist/m3u: support for mime-type audio-mpegurl for M3U playlists 2017-05-19 15:25:58 +02:00
Max Kellermann 71f0ed8b74 *: add "noexcept" to many, many function prototypes
This eliminates some overhead, because the compiler doesn't need to
consider these functions throwing.
2017-05-08 14:44:49 +02:00
Max Kellermann d91d5a3ab5 playlist/SoundCloud: eliminate unnecessary casted variable 2017-01-20 17:16:11 +01:00
Max Kellermann 5900253b85 update copyright year 2017-01-03 20:48:59 +01:00
Max Kellermann 31d77ec580 input/curl, ...: use strncmp() instead of memcmp() to avoid crash 2017-01-03 13:17:02 +01:00
Max Kellermann 2e182e84c3 thread/Mutex: remove ScopeLock, use std::lock_guard directly 2017-01-03 07:11:57 +01:00
Max Kellermann 22dcca9832 util/Error: remove obsolete class 2016-11-10 12:58:26 +01:00
Max Kellermann ed68fd4ab3 queue/PlaylistUpdate: include cleanup 2016-10-27 22:19:26 +02:00
Max Kellermann 6961bd61ca LocateUri: migrate from class Error to C++ exceptions 2016-10-27 22:04:41 +02:00
Max Kellermann 6135f0763b playlist/cue/CueParser: update API documentation 2016-10-26 17:07:52 +02:00
Max Kellermann 8c744efd56 input/InputStream: migrate from class Error to C++ exceptions 2016-09-16 17:43:36 +02:00
Max Kellermann fc7d3f64c0 input/Plugin: migrate open() from class Error to C++ exceptions 2016-09-09 18:15:01 +02:00
Max Kellermann 20894d1c5e playlist/SoundCloud: use AtScopeExit() 2016-09-09 18:04:11 +02:00
Max Kellermann 2f03d2234a playlist/SoundCloud: use std::string 2016-09-09 18:01:36 +02:00
Max Kellermann dadf3d846b playlist/SoundCloud: implicit SoundCloudJsonData initialization 2016-09-09 18:01:01 +02:00
Max Kellermann 941a9284b9 playlist/SoundCloud: rename struct parse_data to SoundCloudJsonData 2016-09-09 18:00:26 +02:00
Max Kellermann 4ee3820bd6 playlist/SoundCloud: make parse_callbacks constexpr 2016-09-09 17:59:42 +02:00
Max Kellermann c155df5d79 playlist/SoundCloud: use ScopeLock 2016-09-09 17:59:07 +02:00
Max Kellermann 92cdea123e TagStream, decoder/Thread, ...: ignore MIME type parameters for matching plugins 2016-06-10 22:24:13 +02:00
Max Kellermann e4c7e343c8 util/StringUtil: use CamelCase 2016-06-10 22:08:13 +02:00
Max Kellermann fc3e0dfcd1 fs/AllocatedPath: add method FromUTF8Throw() 2016-04-21 14:27:32 +02:00
Max Kellermann 9431a7b022 playlist/Any: fix documentation typo 2016-04-13 19:23:14 +02:00
Max Kellermann 4f393553f4 playlist/Song: catch SongLoader exceptions
Fixes aborted "load" commands due to SongLoader failure.
2016-04-12 21:09:53 +02:00
Max Kellermann 1aee89f5ea *: include cleanup (using iwyu) 2016-03-01 22:08:13 +01:00
Max Kellermann b6cb9b853a queue/PlaylistEdit: throw PlaylistError on error 2016-02-28 11:02:36 +01:00
Max Kellermann cbeb809798 playlist/queue: use std::unique_ptr 2016-02-28 10:58:50 +01:00
Max Kellermann 1d67aa7bf2 update copyright year to 2016 2016-02-26 17:54:05 +01:00
Max Kellermann 7623c1c5cb SongUpdate: move tag_scan_fallback() to tag/Generic.cxx 2016-02-22 18:00:49 +01:00
Max Kellermann a5f8fd774d tag/handler: use CamelCase 2016-02-22 17:38:06 +01:00
Max Kellermann 7ae9e49f51 playlist/Stream, db/upnp: add missing includes 2016-02-22 17:30:36 +01:00
Max Kellermann 0705f42cf8 playlist/Plugin: pass InputStreamPtr&& to open_stream()
Obsolete class CloseSongEnumerator, which was a kludge.
2016-02-21 12:53:47 +01:00
Max Kellermann cadc67ea40 input: wrap InputStream in std::unique_ptr 2016-02-21 08:03:32 +01:00
Max Kellermann a1ef0159e3 playlist/PlaylistStream: catch and log C++ exceptions 2016-02-07 12:18:58 +01:00
Max Kellermann 1c5f76635a playlist/SongEnumerator: wrap song in std::unique_ptr 2016-02-07 11:58:54 +01:00
Max Kellermann e2a0fd7a28 playlist/cue/CueParser: Get() returns std::unique_ptr 2016-02-07 11:58:17 +01:00
Max Kellermann 5869a4ba2d playlist/cue/CueParser: use std::unique_ptr 2016-02-07 08:31:51 +01:00
Max Kellermann ac9a93261b playlist/cue/CueParser: use C++11 initializers 2016-02-07 08:30:49 +01:00
Max Kellermann 0d1a54262c playlist/soundcloud: make key_str "static const" 2015-11-06 09:52:35 +01:00
Max Kellermann 733989a284 util/StringUtil: move comparison functions to StringCompare.cxx 2015-11-06 09:20:18 +01:00
Max Kellermann 22ebe0e58f playlist/flac: re-add the plugin
This reverts commit d7d9dbd2c2 by
reimplementing it with the current MPD API.

3 years ago, I was wrong about the "embcue" plugin being able to
replace this one, because "embcue" reads a tag named "CUESHEET", while
this plugin reads the "CUESHEET" FLAC metablock.  There's an important
difference between those two!
2015-10-26 13:16:01 +01:00
Max Kellermann 356c829b76 util/StringView: new utility class 2015-09-30 22:21:46 +02:00
Max Kellermann ce0d896492 unix/Daemon, playlist/pls, ...: remove unused Domain variables 2015-09-17 23:15:54 +02:00
Will Tiffany 8461d71b52 CueParser.cxx: Append pregap to previous track
Only ignore indexes after first nonzero, preserving pregaps but
appending them to the previous track instead of prepending to the
current. The first index of the first track is used for the start time
regardless of its number. Unneeded bool last_updated removed.
2015-09-17 22:44:47 +02:00
Will Tiffany 0f75c79665 CueParser.cxx: ignore INDEX after first per track
Use the first INDEX in each TRACK section, instead of the last, for the
start time. This preserves the original CD layout (including gaps
between tracks), and avoids skipping sections of songs in more exotic
cuesheets (eg musical suite tracks).

Fixes 0004355 and 0003359
2015-08-23 15:49:50 +02:00
Max Kellermann 7652a2986b client/Response: new Client wrapper class for writing responses 2015-08-12 08:41:05 +02:00
xent 34db35c36d playlist/embcue: fix last track 2015-08-05 23:37:57 +02:00
Max Kellermann b31d171ae8 *: doxygen fixups 2015-03-17 11:21:43 +01:00
Max Kellermann 91a6fb81c1 PlaylistStream: convert suffix to UTF-8 2015-03-05 10:07:07 +01:00
Max Kellermann 1c90b0c19d *: change C-style prototypes, drop "(void)" 2015-03-03 20:05:08 +01:00
Max Kellermann 7ce96585f5 fs/Path: add method GetSuffix()
Type-safe wrapper for uri_get_suffix().
2015-03-01 01:09:53 +01:00