Commit Graph

11347 Commits

Author SHA1 Message Date
Max Kellermann dc5984d0e0 ReplayGainConfig: move code to ParsePreamp() 2016-11-24 17:45:27 +01:00
Max Kellermann 7afbd4800f filter/ReplayGain: use ToString(ReplayGainMode) 2016-11-24 17:39:00 +01:00
Max Kellermann 0720702c91 ReplayGainMode: add ToString(), FromString()
Move code from ReplayGainConfig.cxx.
2016-11-24 17:34:57 +01:00
Max Kellermann 5f396e824f ReplayGainMode: convert to strictly-typed enum 2016-11-24 17:34:57 +01:00
Max Kellermann 4f229c254c ReplayGainInfo: move enum ReplayGainMode to separate header 2016-11-24 17:34:57 +01:00
Max Kellermann 25e58df5e0 ReplayGainInfo: don't use array in struct ReplayGainInfo
Declare two named elements.  An enum should not be used as an array
index, as this is error prone.
2016-11-24 17:34:57 +01:00
Max Kellermann 1261327fa6 ReplayGainInfo: implement fallback in Get()
Eliminates Complete().
2016-11-24 17:34:57 +01:00
Max Kellermann 09c3cc58e4 ReplayGainInfo: add method Get() 2016-11-24 17:34:57 +01:00
Max Kellermann 7ef31f84a7 command/Error: translate std::invalid_argument to ACK_ERROR_ARG 2016-11-24 17:33:36 +01:00
Max Kellermann 85c2b396ce test/FakeDecoderAPI: move code to DumpReplayGainTuple() 2016-11-24 17:17:30 +01:00
Max Kellermann 0759d72108 Partition: add UpdateEffectiveReplayGainMode()
Move code from replay_gain_get_real_mode().
2016-11-24 15:18:57 +01:00
Max Kellermann 9b9144f25d decoder/Control: use C++11 initializers 2016-11-24 14:58:17 +01:00
Max Kellermann b677e891b4 decoder/{mikmod,modplug}: throw exception instead of calling FatalError() 2016-11-24 14:09:58 +01:00
Max Kellermann 509f62f68d output/MultipleOutputs: throw exception instead of calling FatalError() 2016-11-24 14:04:40 +01:00
Max Kellermann 868bf752f3 MusicPipe: disallow copying 2016-11-23 18:06:15 +01:00
Max Kellermann 051cdc9670 MusicPipe: use C++11 initializers 2016-11-23 18:04:23 +01:00
Max Kellermann 4de5c216ff MusicChunk: disallow copying 2016-11-23 17:57:29 +01:00
Max Kellermann ad2c7304ea MusicChunk: use C++11 initializers 2016-11-23 17:56:36 +01:00
Max Kellermann 4dd1309c3f filter/Plugin: rename with CamelCase 2016-11-23 17:43:50 +01:00
Steven OBrien 541da2740d db/simple: add missing "return"
SimpleDatabase::Visit() always throws exception when visiting a song.
Adding a song to the queue always results in a "No such directory"
error response, although the song is successfully added.  This
behaviour was introduced by commit
3ff728ab02.  This patch fixes this.

https://bugs.musicpd.org/view.php?id=4601
2016-11-23 17:30:30 +01:00
Max Kellermann 95e2bec215 decoder/DecoderPlugin: container_scan() returns forward_list<DetachedSong>
Speed up container_scan() again, by eliminating the need to call
scan_file() for each item.
2016-11-22 16:49:31 +01:00
Max Kellermann 72c96052b4 decoder/gme: move gme_container_scan() down 2016-11-22 16:49:30 +01:00
Max Kellermann 2ab168735f test/ContainerScan: new debug program 2016-11-22 16:04:06 +01:00
Max Kellermann 85cdf05890 Makefile.am: remove obsolete variables 2016-11-22 16:04:02 +01:00
Max Kellermann bf78b7f815 decoder/sidplay: use template to eliminate duplicate code 2016-11-22 13:17:31 +01:00
Max Kellermann ffb9874d84 decoder/sidplay: move code to ScanSidTuneInfo() 2016-11-22 12:37:25 +01:00
Max Kellermann 228cdbe6af decoder/gme: provide the TRACK tag 2016-11-22 12:20:31 +01:00
Max Kellermann a303639c9e decoder/{gme,sidplay}: fix off-by-one bug in container_scan()
Broken by commit 0abee77e62
2016-11-22 12:20:31 +01:00
Max Kellermann c5133f6088 db/update/Container: catch C++ exceptions 2016-11-22 12:16:14 +01:00
Max Kellermann 27d368d48d decoder/gme: use AtScopeExit() 2016-11-22 12:16:14 +01:00
Max Kellermann 085b599f84 decoder/gme: remove redundant extern declaration 2016-11-22 12:16:14 +01:00
Max Kellermann 3b84eb3b70 decoder/gme: add missing SUBTUNE_PREFIX
Got lost in 0abee77e62
2016-11-22 12:16:14 +01:00
Max Kellermann aa877a29d7 decoder/Thread: repair container decoder support
Catch ENOTDIR exceptions and in that case, try all matching decoder
plugins which implement the "container_scan" method.

 https://bugs.musicpd.org/view.php?id=4561
2016-11-22 10:24:08 +01:00
Max Kellermann 0abee77e62 decoder/DecoderPlugin: container_scan() returns forward_list<string> 2016-11-22 09:33:52 +01:00
Max Kellermann 114fcee2ae decoder/Client: add virtual method Read() 2016-11-21 22:43:09 +01:00
Max Kellermann b488204093 decoder/API: move DecoderBridge methods to Bridge.cxx 2016-11-21 22:14:09 +01:00
Max Kellermann 322bfbaf57 decoder/API: simplify the client==nullptr code path in decoder_read() 2016-11-21 22:13:03 +01:00
Max Kellermann 2718f4c333 decoder/API: move part of decoder_check_cancel_read() into class DecoderBridge 2016-11-21 22:07:03 +01:00
Max Kellermann 8c342a764b decoder/API: move functions into class DecoderBridge 2016-11-21 21:44:57 +01:00
Max Kellermann 697c3f8cb9 decoder/Internal: rename struct Decoder to class DecoderBridge 2016-11-21 21:38:23 +01:00
Max Kellermann bb292f501d m4/ax_cxx_compile_stdcxx.m4: workarounds to allow gcc 4.8
gcc 4.8 doesn't have full C++14 support, but it's enough for MPD.
2016-11-21 21:38:23 +01:00
Max Kellermann 723e54f74e decoder/Client: add OpenUri(), replacing decoder_open_uri() 2016-11-18 12:34:04 +01:00
Max Kellermann 1a8c96a3f0 decoder/mpcdec: use AtScopeExit() 2016-11-18 12:22:41 +01:00
Max Kellermann a88040e4d5 decoder/Client: add Submit methods
Replaces decoder_data() and others.
2016-11-18 09:05:04 +01:00
Max Kellermann 47a0f46ce8 decoder/Client: add DecoderCommand/seek virtual methods 2016-11-18 09:03:42 +01:00
Max Kellermann 66fb352cca decoder/Client: add virtual method Ready()
Replaces decoder_initialized().
2016-11-18 09:03:41 +01:00
Max Kellermann fd77acc217 decoder/Client: new interface which wraps struct Decoder
Prepare for a Decoder API redesign based on an abstract class with
virtual methods.
2016-11-18 09:03:39 +01:00
Max Kellermann 595d1942cb decoder/Internal: rename "chunk" to "current_chunk" 2016-11-18 09:01:32 +01:00
Max Kellermann b905933999 python/build/libs: upgrade CURL to 7.51.0 2016-11-18 08:59:29 +01:00
Max Kellermann 219a756abc Compiler.h: drop gcc_alignas(), use plain C++11 alignas() 2016-11-18 08:56:16 +01:00