Commit Graph

855 Commits

Author SHA1 Message Date
Jacob Vosmaer
e068d62ac6 output/osx rewrite render callback 2016-07-08 15:36:42 +02:00
Jacob Vosmaer
2fdbae3e1f Remove braces 2016-07-03 16:45:23 +02:00
Jacob Vosmaer
87e06793c2 Get rid of GetMacOSStatusCommentString 2016-07-03 14:06:53 +02:00
Jacob Vosmaer
8cc451a2e2 Use error.Set instead of error.Format 2016-07-03 13:36:35 +02:00
Jacob Vosmaer
723c2c7fa9 Remove some debugging code 2016-07-03 13:18:44 +02:00
Jacob Vosmaer
4dd2c5cdd5 Convert device name from CFStringRef to char* 2016-07-03 12:59:19 +02:00
Jacob Vosmaer
bdc257b40e Add debug statements 2016-07-02 23:44:21 +02:00
Jacob Vosmaer
4728f7c697 Use AudioComponent instead of Carbon Component 2016-07-02 23:35:44 +02:00
Max Kellermann
3a21241248 filter/FilterInternal: split class Filter, add class PreparedFilter
For easier state management inside filter plugins.
2016-07-01 21:04:24 +02:00
Max Kellermann
a43b0f5253 mixer/software: move Filter management to the AudioOutput 2016-07-01 18:23:53 +02:00
Dimitris Papastamos
4a6df9f961 output/sndio: Remove unused attribute
The variable is actually used in this function.
2016-06-24 09:11:36 +02:00
Dimitris Papastamos
a43ae2369b output/sndio: Add 24-bit 4-byte packed audio format support 2016-06-24 09:11:30 +02:00
Dimitris Papastamos
9a049de859 output/sndio: No need to use a loop in Play()
This is a left-over from the previous version of the code
that was retrying on EINTR.
2016-06-24 09:10:57 +02:00
Dimitris Papastamos
58b8398aa0 output/sndio: Use size_t instead of ssize_t
Some minor style fixes as well.
2016-06-23 11:11:42 +02:00
Max Kellermann
645751f680 output/Init: use C++11 initializers 2016-06-22 18:44:00 +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
8406864963 sndio: Allow tweaking application buffer size
It defaults to 250 ms.
2016-06-22 16:09:57 +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
d3c7fac606 thread/Thread: throw std::system_error on error 2016-06-17 19:11:20 +02:00
Max Kellermann
b376536a3b encoder/Interface: convert PreparedEncoder to abstract class 2016-05-04 18:32:52 +02:00
Max Kellermann
e7edc02647 encoder/Interface: move instance methods to abstract class
Rename struct Encoder to PreparedEncoder, and add a new (abstract)
class Encoder which represents one encoder instance.
2016-05-04 16:32:31 +02:00
Max Kellermann
6407b7c591 output/recorder: use C++11 initializers 2016-05-04 15:18:57 +02:00
Max Kellermann
e14cd92d59 output/shout: use AudioOutputWrapper 2016-05-04 15:06:29 +02:00
Max Kellermann
73cadd1798 output/shout: dispose encoder in destructor 2016-05-04 15:05:48 +02:00
Max Kellermann
fb9840f1f8 output/shout: call shout_shutdown() in destructor 2016-05-04 15:03:55 +02:00
Max Kellermann
492aaa3375 output/shout: use C++11 initializers 2016-05-04 14:46:45 +02:00
Max Kellermann
4c6619e6c5 output/MultipleOutputs: use C++11 initializers 2016-04-21 13:28:31 +02:00
Max Kellermann
6a1f5667f9 util/FormatString: return AllocatedString 2016-04-12 22:59:23 +02:00
Max Kellermann
667edcd9d0 util/IterableSplitString: cheaper variant of SplitString() 2016-03-18 14:11:50 +01:00
Max Kellermann
1aee89f5ea *: include cleanup (using iwyu) 2016-03-01 22:08:13 +01:00
Max Kellermann
92f54f0b59 output/alsa: disable DoP if it fails
See http://bugs.musicpd.org/view.php?id=4496
2016-02-28 10:19:19 +01:00
Max Kellermann
ddce544b53 output/alsa: move the PcmExport::Open() call to Open() 2016-02-28 10:15:54 +01:00
Max Kellermann
21fb7eea82 output/alsa: probe DSD_U32 if DSD_U8 fails
See http://bugs.musicpd.org/view.php?id=4485
2016-02-28 09:59:09 +01:00
Max Kellermann
fd7eb43366 output/alsa: use CamelCase 2016-02-28 09:44:15 +01:00
Max Kellermann
a1add27c4c output/alsa: fix indent 2016-02-28 09:35:57 +01:00
Max Kellermann
fc8194ee1e output/alsa: fix typo 2016-02-28 09:35:55 +01:00
Max Kellermann
8ffcdb73e8 output/alsa: remove option "use_mmap"
MPD does not really take advantage of memory-mapped I/O by generating
data right into the ALSA buffer; using plain snd_pcm_mmap_writei() has
no advantage compared to snd_pcm_writei().  Let's kill this
non-feature.
2016-02-28 09:30:59 +01:00
Max Kellermann
111528e51c output/alsa: add #ifdef ENABLE_DSD
Fixes the --disable-dsd build.

See http://bugs.musicpd.org/view.php?id=4498
2016-02-28 07:29:37 +01:00
Max Kellermann
c9761bf6af output/alsa: pass PcmExport::Params to alsa_setup() 2016-02-27 07:35:35 +01:00
Max Kellermann
4a47265224 output/alsa: pass PcmExport::Params to SetupDop() 2016-02-27 07:34:58 +01:00
Max Kellermann
f0f3017a76 pcm/export: move Open() parameters to struct Params 2016-02-26 18:55:27 +01:00
Max Kellermann
6a53fb33da output/alsa: basic infrastructure for DSD_U16 and DSD_U32 2016-02-26 18:44:58 +01:00
Max Kellermann
1d67aa7bf2 update copyright year to 2016 2016-02-26 17:54:05 +01:00
Christian Halaszovich
3392cbbd91 Emit a warning if the OutputThread fails to get realtime scheduling
This only applies to linux systems.  Here, sched_setscheduler() is
called to get realtime scheduling.  With this patch, the return value
of this function is now checked and a warning / error message is
generated if it fails.
2016-02-19 17:09:44 +01:00