Max Kellermann
c8aa7afdc6
output/oss: migrate from class Error to C++ exceptions
2016-11-05 13:18:45 +01:00
Max Kellermann
b35bb1b50c
output/alsa: use C++ initializers
2016-11-04 11:31:23 +01:00
Max Kellermann
6341be9cdf
output/alsa: migrate from class Error to C++ exceptions
2016-11-04 11:31:23 +01:00
Max Kellermann
93a14a93f9
output/alsa: use Error::FormatPrefix()
2016-11-04 11:31:23 +01:00
Max Kellermann
d6559e2ac9
output/Thread: fix wrong error reference in catch clause
2016-11-04 11:31:23 +01:00
Max Kellermann
65e6755b8b
output/ao: migrate from class Error to C++ exceptions
2016-11-02 12:36:13 +01:00
Max Kellermann
6ead9750f4
output/pulse: migrate from class Error to C++ exceptions
2016-11-02 11:01:22 +01:00
Max Kellermann
6532c7e089
output/pulse: use C++11 initializers
2016-11-02 11:01:07 +01:00
Max Kellermann
8b3d934230
output/Thread: catch Pause() exceptions
2016-11-02 10:53:43 +01:00
Max Kellermann
e2b7c30811
event/BufferedSocket: pass std::exception_ptr to OnSocketError()
2016-11-02 10:38:05 +01:00
Max Kellermann
e17805f208
config/Block: GetPath() throws exception on error
2016-10-28 23:08:42 +02:00
Max Kellermann
d8bcdca55a
config/Block: rename GetBlockPath() to GetPath()
2016-10-28 23:07:26 +02:00
Max Kellermann
f6f2a3b366
output/alsa: throw C++ exception on init error
2016-10-28 22:56:27 +02:00
Max Kellermann
d52c7e7a1b
output/httpd: throw C++ exception on init error
2016-10-28 22:42:10 +02:00
Max Kellermann
c4acccac14
output/Init: add constructor overload which calls Configure()
2016-10-28 22:41:07 +02:00
Max Kellermann
13001c018c
AudioParser: throw exception on error
2016-10-28 22:36:04 +02:00
Max Kellermann
0c343cb1c3
encoder/Plugin: migrate from class Error to C++ exceptions
2016-10-28 21:29:01 +02:00
Max Kellermann
aead221184
event/ServerSocket: migrate from class Error to C++ exceptions
2016-10-28 21:22:25 +02:00
Max Kellermann
0c464b24ad
OutputInit: allow "init" to throw exception
2016-10-28 21:11:52 +02:00
Max Kellermann
a249a630c0
OutputThread: support plugins throwing exceptions
2016-10-28 21:10:18 +02:00
Max Kellermann
f39823eac0
OutputThread: use class ScopeUnlock for exception-safety
2016-10-28 21:10:18 +02:00
Max Kellermann
69de99636f
OutputPlugin: update API documentation
2016-10-28 21:10:18 +02:00
Max Kellermann
5b2b4bf13c
config/Param: use CamelCase
2016-10-28 11:38:37 +02:00
Yue Wang
d0302d1bbe
_delay in output plugin will now ask the thread to repeatedly wait until it returns 0.
...
change the _delay API doc so that it matches its implementation behavior.
2016-09-19 10:24:56 -07:00
Yue Wang
d73267df5e
use osx_output_delay to wait until ring buffer is able to write
...
This further optimize the performance.
This is now working properly with a conditional variable bug being fixed (8bbfb5cda1
).
2016-09-19 08:51:03 -07:00
Yue Wang
f881917d2f
Fix a bug that buffer_frame_size is not properly initialized
2016-09-18 21:09:57 -07:00
Yue Wang
99244f51b0
Remove unused imports
2016-09-18 19:40:55 -07:00
Yue Wang
606d029ed9
Kill mutex and locks in osx_render. Improve performance. Also fix an initialization problem
2016-09-18 19:40:04 -07:00
Yue Wang
e4b9d679fb
options for sample rate syncing and device hogging
2016-09-18 19:12:45 -07:00
Yue Wang
4a8a33ea85
Hogging is for user selected device only.
...
do not hog system device.
2016-09-18 13:15:46 -07:00
Yue Wang
ac4b83046a
Add sample rate synchronization and device hogging to core audio plugin
...
which ensures mpd do bit perfect playback on OS X
2016-09-18 12:52:08 -07:00
Max Kellermann
e7d327226a
mixer: migrate to C++ exceptions
2016-09-09 14:44:15 +02:00
Max Kellermann
860064c812
output/pulse: use a RTTI lock guard
...
Make all the locks exception-safe.
2016-09-09 14:36:24 +02:00
Max Kellermann
1c07f197de
Filter/Plugin: migrate from class Error to C++ exceptions
2016-09-04 20:07:05 +02:00
Max Kellermann
13c32111a0
Filter/Internal: migrate from class Error to C++ exceptions
2016-09-04 19:38:41 +02:00
Max Kellermann
12091fcfb1
thread/Util: throw exception on error
2016-09-04 15:15:11 +02:00
Max Kellermann
3fea624cca
output/Thread: use Close() after error in ReopenFilter()
...
Now that CloseFilter() may be called again, we can reduce code
duplication.
2016-09-04 15:09:51 +02:00
Max Kellermann
9007dd9ab7
output/Thread: clear Filter pointers in CloseFilter()
...
This allows calling CloseFilter() multiple times.
2016-09-04 15:09:05 +02:00
Max Kellermann
08166cf330
output/Internal: initialize the Filter pointers
...
With the configuration "replay_gain_handler none", the Filter pointers
are never initialized, which can crash MPD.
https://bugs.musicpd.org/view.php?id=4571
2016-09-04 15:05:42 +02:00
Earnestly
e2f6cc9c9f
Don't overwrite ss.format
...
Currently the switch statement is invalidated by ss.format being overwritten
with the default value of PA_SIMPLE_S16NE which results in white noise during
playback as my server is expected S16LE (S16NE).
Signed-off-by: Earnestly <zibeon@gmail.com>
2016-08-23 10:01:56 +02:00
Max Kellermann
ea0e6d9824
fs/FileSystem: RemoveFile() throws exception on error
2016-08-15 22:25:15 +02:00
Max Kellermann
743fa73a01
Merge branch 'v0.19.x'
2016-08-15 12:33:07 +02:00
Nils Schneider
62000670e3
Support S24_P32/S32/FLOAT sample formats on Pulse
...
This is based on a patch from Ian Scott in 2014. It was never committed,
so I figured I'd fix the outstanding issue and resubmit it.
https://www.mail-archive.com/mpd-devel%40musicpd.org/msg00139.html
2016-08-15 10:02:29 +02:00
Max Kellermann
ac49043fbb
output/pulse: move variable declaration down
2016-08-15 10:02:22 +02:00
Jacob Vosmaer
4d6192adcd
Use a ScopeLock around condition.wait()
2016-08-07 15:47:21 +02:00
Jacob Vosmaer
9f1ada898e
Improve readability of frame completion loop
2016-08-07 14:15:55 +02:00
Jacob Vosmaer
5617521380
Must lock/unlock around wait
2016-08-06 15:25:58 +02:00
Jacob Vosmaer
9835a2545d
Do not assume two pops are enough
2016-08-06 15:19:10 +02:00
Jacob Vosmaer
c28cefeeb0
output/osx: wait-free render callback
...
Closes https://bugs.musicpd.org/view.php?id=4537 .
Removed the 'cancel' function because it violates 'single producer,
single consumer'.
2016-08-06 00:08:10 +02:00
Max Kellermann
2777a23672
Merge branch 'v0.19.x'
2016-07-29 20:25:59 +02:00