Commit Graph

11474 Commits

Author SHA1 Message Date
Max Kellermann
645751f680 output/Init: use C++11 initializers 2016-06-22 18:44:00 +02:00
Dimitris Papastamos
2d3b6879f5 doc: Initial sndio documentation 2016-06-22 18:43:44 +02:00
Dimitris Papastamos
26c0924461 sndio: Eliminate remaining goto usage to conform to MPD style 2016-06-22 16:10:46 +02:00
Dimitris Papastamos
d4f801a8e9 sndio: Fix segmentation fault when audio card is removed
This can happen if you remove an external audio card or if you stop
sndiod(8) while playing a song.

sio_write() will retry internally if it fails with errno == EINTR
so no need to handle that.
2016-06-22 16:10:38 +02:00
Dimitris Papastamos
cb1082c58c Add an example of sndio output to mpdconf.example 2016-06-22 16:10:27 +02:00
Dimitris Papastamos
8406864963 sndio: Allow tweaking application buffer size
It defaults to 250 ms.
2016-06-22 16:09:57 +02:00
Max Kellermann
85ef034fd0 filter/ReplayGain: use C++11 initializers 2016-06-22 12:43:47 +02:00
Max Kellermann
59141f62bb filter/route: use std::array 2016-06-22 12:24:55 +02:00
Dimitris Papastamos
d68cadba7b sndio: No need to use a timer so get rid of it 2016-06-22 11:28:58 +02:00
Max Kellermann
1207fd1f16 output/sndio: remove unnecessary initialization 2016-06-22 11:01:37 +02:00
Dimitris Papastamos
8aa61e230c sndio: Add option to select output device 2016-06-22 11:00:06 +02:00
Max Kellermann
2c7bda8a3b output/sndio: define SIO_DEVANY if it is undefined
Fixes build failure on Debian Wheezy.
2016-06-22 10:58:44 +02:00
Dimitris Papastamos
d58c5dd398 sndio: Implement sndio_test_default_device() 2016-06-22 10:54:59 +02:00
Dimitris Papastamos
171da7a347 Add sndio output plugin 2016-06-22 08:44:47 +02:00
Max Kellermann
3fd70a769a event/SignalMonitor: remove unused function SignalMonitorGetEventLoop 2016-06-20 10:48:34 +02:00
Max Kellermann
4280f84535 event/SignalMonitor: use BoundMethod instead of raw function pointer 2016-06-20 10:46:36 +02:00
Max Kellermann
c3d9c32615 util/BindMethod: add nullptr constructor and bool operator 2016-06-20 10:36:37 +02:00
Max Kellermann
a938b609b9 util/BindMethod: document the default constructor 2016-06-20 10:36:09 +02:00
Max Kellermann
d3c7fac606 thread/Thread: throw std::system_error on error 2016-06-17 19:11:20 +02:00
Max Kellermann
fea3f6cc72 thread/Thread: use C++11 initialisers 2016-06-17 19:11:19 +02:00
Max Kellermann
aee5966e1c input/thread: use C++11 initialisers 2016-06-17 19:10:39 +02:00
Max Kellermann
95e53ac0a0 input/alsa: rebase on AsyncInputStream
Use the snd_pcm_t only in the IOThread, and reuse code that is
well-known to work.
2016-06-17 18:36:54 +02:00
Max Kellermann
5d11759f7d input/async: use class DeferredCall 2016-06-17 18:31:58 +02:00
Max Kellermann
829616534e event/DeferredCall: new class supposed to replace DeferredMonitor
Comes with a callback pointer instead of a virtual method, which
allows multiple instances in one class.
2016-06-17 18:26:29 +02:00
Max Kellermann
863f4d8366 util/BindMethod: new utility class for callbacks
Replaces the old BoundMethod template.
2016-06-17 18:20:19 +02:00
Max Kellermann
bdd0c3686d input/async: use class HugeAllocation 2016-06-17 18:06:02 +02:00
Max Kellermann
91769d536d util/HugeAllocator: add class HugeAllocation 2016-06-17 18:01:13 +02:00
Max Kellermann
9500343d85 util/HugeAllocator: add "noexcept" 2016-06-17 17:59:45 +02:00
Max Kellermann
ef053035d0 util/HugeAllocator: throw std::bad_alloc on error 2016-06-17 17:57:40 +02:00
Max Kellermann
35faafb32c python/libs: upgrade CURL to 7.49.1 2016-06-17 17:57:40 +02:00
Max Kellermann
f9fd868b99 python/libs: upgrade FFmpeg to 3.0.2 2016-06-17 17:57:10 +02:00
Max Kellermann
8b903626c2 release v0.19.16
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABCAAGBQJXXuZbAAoJECNuiljG20USSegP/1gYoDyp4vDDCcRBNZkr3hlE
 VbFyEz06/chfUTCRWFxtM6ghVMzSpqv7I8wDA8zv22NTkForVWD3gjimtJqJ/R4w
 aT7QMZJmJUIH0Uf+dRp98YRG7m5S1Y5JkKEYu4oxQOECxbNMPd+ilbb6wwr2pYZ/
 k2ks+oyYtPgqtWlriIbJMwXOyQEfqNCJgzxUzC2U6idVALYpj+5aK+VTY4Nk1YXw
 nLAu8TT40jNYFfss0bDYBzQbm/82m8Q9JIkmoOpX/3WaRaCjaVza7IvRKgDPZutJ
 mmrtu5SJ+QgLQLaXvav84KwtXhDbJu4zEbC7tUL0LGSmzbpiiz2DSUJP2jQ0C6nS
 wgcACFkHGBLOjKNbjDB1eUhS7ouzxTGgPlsMC89254R7XQP/5EV9H3Quxb48Bxq7
 PuW6nNHytppfAIZP18X62oL8hpSgwK1zLe34jzayJlkGIg5O1he4FcJQykvlzrjm
 fBvL+hX3TM9exfASQujNXVgxFGPmgb37bE2aQyxZunE1DltJWfHyOhdme9vCuEcB
 acz8gR/jcp8OKe4RCEdD1g86CSW2wlMfKfnzuwPPhcw0L3kz6OYcjRr2oMae7uG0
 /NFw+PcdHcVKXjiRoJsdCvtN+jRtJhCUn314IskgyKad/UNcELbo7WDBUqHC36Wg
 ncM6Sis4oal4jPXJ2JoE
 =6ee1
 -----END PGP SIGNATURE-----

Merge tag 'v0.19.16'

release v0.19.16
2016-06-13 19:03:59 +02:00
Max Kellermann
faf0c950fe release v0.19.16 2016-06-13 18:59:07 +02:00
Max Kellermann
4ecd325371 decoder/flac: log seek errors 2016-06-13 18:37:45 +02:00
Max Kellermann
021519f295 command/QueueCommands: eliminate duplicate code in handle_addid() 2016-06-13 18:28:03 +02:00
Max Kellermann
e83685d667 Merge branch 'addid-with-pos' of git://github.com/ewollesen/MPD 2016-06-13 18:27:21 +02:00
Eric Wollesen
81a198a76a return id for "addid" with position
Previously the id was being returned only when a position wasn't
specified.
2016-06-13 10:14:20 -06:00
Max Kellermann
5771d67202 player/Thread: cancel outputs before seeking
.. instead of doing it after seeking.  After seeking, the command had
no effect, because CheckDecoderStartup() waits for all outputs to
finish.  This caused a very long delay while seeking and switching
songs (https://bugs.musicpd.org/view.php?id=4534).
2016-06-13 09:13:56 +02:00
Lazaros Koromilas
b2b7974ba0 util/WStringAPI: wcpcpy(3) is not yet supported on OpenBSD/NetBSD
Signed-off-by: Lazaros Koromilas <lostd@2f30.org>
2016-06-12 16:36:17 +02:00
Lazaros Koromilas
f59ca94416 net/Resolver: correct includes for gettaddrinfo(3)
Signed-off-by: Lazaros Koromilas <lostd@2f30.org>
2016-06-12 16:36:17 +02:00
Max Kellermann
22ff0d80ce decoder/pcm: add MIME type "audio/x-mpd-float" 2016-06-10 23:06:21 +02:00
Max Kellermann
5a22a0c27d decoder/pcm: implement RFC 2586 (audio/L16)
https://bugs.musicpd.org/view.php?id=4525
2016-06-10 22:52:35 +02:00
Max Kellermann
287ef181ba util/MimeType: add ParseMimeTypeParameters() 2016-06-10 22:52:35 +02:00
Max Kellermann
bc63810ebd doc/user: mention the "pcm" decoder plugin 2016-06-10 22:52:35 +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
6b75be183d m4: update to autoconf-archive 20150925 2016-05-27 15:27:44 +02:00
Max Kellermann
718f6d9cef python/libs: upgrade Boost to 1.61.0 2016-05-27 15:27:44 +02:00
Max Kellermann
2ee43c403c decoder/vorbis: reimplement using class OggDecoder
Use libvorbis instead of libvorbisfile, which gives us more control
over the decoding process.
2016-05-14 12:31:12 +02:00
Max Kellermann
24fa3f5e7b Revert "decoder/Thread: flush last chunk only on success"
This reverts commit 995cd95474.  It was
a bad idea because it caused assertion failures when a decoder plugin
aborted with an exception.
2016-05-14 12:31:12 +02:00