Commit Graph

11631 Commits

Author SHA1 Message Date
Max Kellermann 658397dc38 doc/user: mention that more than one audio_output is possible 2017-01-03 20:28:50 +01:00
Max Kellermann 0cd1c8e23e doc/user: mention more plugins 2017-01-03 20:27:22 +01:00
Max Kellermann 0345c1e6f8 doc/user: more general documentation about the configuration file 2017-01-03 20:15:23 +01:00
Max Kellermann f6c4cda0d4 python/libs: upgrade FLAC to 1.3.2 2017-01-03 15:04:07 +01:00
Max Kellermann 39fd713b91 Main: invoke UpdateEffectiveReplayGainMode() after output init
Forward the configured ReplayGainMode to all outputs and decoders.
2017-01-03 13:44:38 +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 06116382ee input/curl: move code to class CurlRequest
The CurlRequest gives us a more low-level API to CURL without the
InputStream interface, integrated into our IOThread.
2017-01-03 12:24:05 +01:00
Max Kellermann d2046de193 test/run_input, ...: RAII-style global initialization 2017-01-03 12:24:05 +01:00
Max Kellermann 4397fe3a13 input/curl: fold input_curl_easy_add_indirect() into the only caller 2017-01-03 10:53:20 +01:00
Max Kellermann 534e1fa6eb input/curl: move code to SeekInternal(), simplify DoSeek()
Simplifies the code and reduces the number of IOThread roundtrips.
2017-01-03 10:50:02 +01:00
Max Kellermann 3e8cc2c670 input/curl: move class CurlGlobal to separate source file 2017-01-03 10:50:02 +01:00
Max Kellermann 3c565baf9d output/Source: clear current_chunk in Close()
Fixes assert failure after unpausing.
2017-01-03 10:50: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 a42021655c thread/Cond: make the integer-based timed_wait() overload private
Make sure this deprecated API is not used.
2017-01-03 07:07:10 +01:00
Max Kellermann 2498a2b0bd thread/Mutex: use std::lock_guard instead of std::unique_lock
We need purely RAII-style, and this is std::lock_guard.
2017-01-03 06:56:24 +01:00
Max Kellermann 4484411a77 output/Internal: add various trivial getter methods 2016-12-29 23:28:54 +01:00
Max Kellermann 61a151c803 output/State: add missing mutex lock 2016-12-29 23:28:46 +01:00
Max Kellermann 5149c950aa output/Multiple: add missing mutex lock 2016-12-29 23:28:46 +01:00
Max Kellermann 18f4d846c9 output/Internal: make the Mutex mutable 2016-12-29 23:28:37 +01:00
Max Kellermann db95aa250d output/Control: pass "force" flag to LockUpdate()
Reduce overhead by eliminating MultipleOutputs::ResetReopen().
2016-12-29 23:20:26 +01:00
Max Kellermann 982d1bf662 output/Init: convert audio_output_setup() to method 2016-12-29 22:59:03 +01:00
Max Kellermann a0393e9ddf python/libs: upgrade Boost to 1.63 2016-12-29 21:55:20 +01:00
Max Kellermann a8d6328bd4 python/build/libs: upgrade CURL to 7.52.1 2016-12-29 21:50:35 +01:00
Max Kellermann 13dab13319 python/build/libs: upgrade FFmpeg to 3.2.2 2016-12-29 21:46:13 +01:00
Max Kellermann c623aa0f06 python/build/verify: support SHA-1 and SHA-256 2016-12-29 21:45:37 +01:00
Max Kellermann 79403afbe6 python/build/verify: prepare SHA support 2016-12-29 21:43:47 +01:00
Max Kellermann 4c650e87fa python/build/verify: add verify_file_digest() 2016-12-29 21:40:54 +01:00
Max Kellermann 3dde62befe python/build/verify: move code to file_digest() 2016-12-29 21:33:36 +01:00
Max Kellermann 8bfabbe265 python/build/verify: move code to feed_file() 2016-12-29 21:33:12 +01:00
Max Kellermann e334b16aaa python/build/download: move file_md5() to verify.py 2016-12-29 21:32:28 +01:00
Max Kellermann 5626ace245 python/build/download: raise RuntimeError 2016-12-29 21:21:58 +01:00
Max Kellermann 52652cb609 command/{Player,Error}: extract messages from nested exceptions 2016-12-29 14:46:13 +01:00
Max Kellermann 256f40d4f5 output/Multiple: obtain detailed error information in Open() 2016-12-29 14:46:13 +01:00
Max Kellermann ef9acc54ec output/Internal: remember the most recent error 2016-12-29 14:21:12 +01:00
Max Kellermann a9f2d25957 output/Thread: unify exception handling 2016-12-29 14:10:37 +01:00
Max Kellermann 6fc47fbb69 thread/Mutex: make ScopeLock an alias for std::unique_lock 2016-12-29 11:53:24 +01:00
Max Kellermann 9c11184238 thread/Mutex: use std::unique_lock to implement ScopeLock 2016-12-29 11:51:25 +01:00
Max Kellermann a421c1dbfb notify: use C++11 initializer 2016-12-29 11:41:22 +01:00
Max Kellermann 7ec707927d lib/nfs/Blocking, neighbor/smbclient: pass std::chrono::duration to Cond::timed_wait() 2016-12-29 11:37:18 +01:00
Max Kellermann 837134daef system/Clock: remove obsolete MonotonicClock*() functions
We're using std::chrono::steady_clock now.  No need to duplicate code.
2016-12-28 22:24:09 +01:00
Max Kellermann 4011899846 system/PeriodClock: use std::chrono::steady_clock 2016-12-28 22:23:45 +01:00
Max Kellermann 28e743ba70 output/Timer: include cleanup 2016-12-28 22:23:45 +01:00
Max Kellermann a161d404ad lib/xiph/OggSerial: use std::chrono::steady_clock 2016-12-28 22:17:59 +01:00
Max Kellermann cd607cb280 lib/upnp/Discovery: use std::chrono::steady_clock 2016-12-28 22:06:06 +01:00
Max Kellermann 4e60ab7f53 lib/upnp/Discovery: use C++11 initializers 2016-12-28 22:05:31 +01:00
Max Kellermann 71e7d32b08 output/Timer: use std::chrono 2016-12-28 22:00:33 +01:00
Max Kellermann d5e422970c output/Plugin: delay() returns std::chrono::steady_clock::duration 2016-12-28 22:00:29 +01:00
Max Kellermann 871ba5a488 thread/Cond: add timed_wait() overload with std::chrono support 2016-12-28 21:47:04 +01:00
Max Kellermann 249e8d59cb Stats: use std::chrono 2016-12-28 10:22:55 +01:00
Max Kellermann 8f4769d2ac Stats: initialize start_time automatically 2016-12-28 10:22:15 +01:00