Max Kellermann
ade0483641
Merge branch 'v0.17.x'
2012-10-02 17:34:03 +02:00
Gregory Smith
03a401e477
OSX: Set mDataByteSize correctly on AudioBuffers during render.
2012-10-02 17:27:52 +02:00
Max Kellermann
9a715267ad
output/shout: move code to my_shout_configure()
...
Eliminate the evil goto.
2012-10-02 00:39:21 +02:00
Max Kellermann
d95e538020
Merge branch 'v0.17.x'
2012-10-02 00:36:05 +02:00
Max Kellermann
adbe8c409a
output/{recorder,shout}: call encoder_read() in a loop
...
This is necessary for Ogg packets that span more than one page.
2012-10-02 00:26:40 +02:00
Max Kellermann
58e600f408
output/recorder: move code to _write_to_file()
2012-10-02 00:26:40 +02:00
Max Kellermann
d34e55c370
output/recorder: fix write() error check
...
We can only check for negative values if the variable is signed.
2012-10-02 00:20:42 +02:00
Max Kellermann
fbcbcdc001
output/recorder: make variables more local
2012-10-02 00:20:32 +02:00
Max Kellermann
4227a325a5
output/httpd: make variables more local
2012-10-02 00:20:13 +02:00
Max Kellermann
43d8252050
output/recorder, test/*: invoke encoder_read() after _open()
...
Make sure the file header gets written at the beginning, before
_write() gets called.
2012-10-02 00:18:18 +02:00
Max Kellermann
674b4ab647
output/shout: eliminate struct shout_buffer
...
Move the raw buffer to struct shout_data.
2012-10-02 00:18:04 +02:00
Max Kellermann
fe8fc1081a
output/shout: remove shout_buffer.len
...
Make it a local variable instead.
2012-10-02 00:17:53 +02:00
Max Kellermann
c7748fedab
output/shout: fix memory leak in error handler
2012-10-02 00:17:27 +02:00
Max Kellermann
c392efb481
output/shout: make variables more local
2012-10-02 00:17:17 +02:00
Max Kellermann
7d27d2ea5e
Merge branch 'v0.17.x'
2012-08-14 23:58:54 +02:00
Max Kellermann
c9aaabb5d4
output/jack: implement method delay()
...
Eliminate the g_usleep() call.
2012-08-14 22:47:25 +02:00
Max Kellermann
335d5d5d72
output/pulse: implement method delay()
...
Reduce command latency while paused.
2012-08-14 22:30:46 +02:00
Max Kellermann
51d793bec1
output/pulse: simplify _wait_stream()
...
One large loop and only one pa_stream_get_state() call.
2012-08-14 22:22:55 +02:00
Max Kellermann
249dcd967e
output/httpd: move delay from _pause() to _delay()
2012-08-14 21:54:47 +02:00
Max Kellermann
302972e9fc
output/httpd: fix throttling bug after resuming playback
...
Reset the timer when paused and no client is connected.
This fixes Mantis ticket 0003527.
2012-08-14 21:39:33 +02:00
Max Kellermann
31b380b266
output/httpd: move code to _has_clients()
2012-08-14 20:22:32 +02:00
Max Kellermann
8e331cfc65
gcc.h: re-add gcc_const and gcc_pure
...
Remove GLib dependency from some headers.
2012-08-02 19:12:18 +02:00
Max Kellermann
edf811fa02
DatabaseVisitor, ...: use GError forward declaration
2012-08-02 19:12:06 +02:00
Max Kellermann
5dfc0918c3
require GLib 2.16
...
GLib 2.16 was released more than 4 years ago. Let's remove some cruft
from the glib_compat.h header, and avoid new cruft to it.
2012-07-10 01:28:52 +02:00
Max Kellermann
457d98c860
output/raop: delete the RAOP plugin
...
This plugin is horrible code, I mean it. Last year, I tried hard to
fix it, but I figured would take less time to do a full rewrite.
Given that I don't even have any device that supports RAOP, I can't do
that properly. After 16 months, nobody volunteered for fixing it.
Hereby, I delete it, because having no RAOP plugin is better than
having this mess. Sorry.
2012-05-29 23:15:41 +02:00
Max Kellermann
89377556cd
output/alsa: multiply writei() result with out_frame_size
...
.. and not in_frame_size, because this relates to the frame size being
sent to ALSA. pcm_export_source_size() will then turn it back into
the in_frame_size scale.
2012-04-23 21:54:09 +02:00
Max Kellermann
df1c5ce314
pcm_export: add _frame_size()
...
Move code from the ALSA output plugin.
2012-04-23 21:54:09 +02:00
Max Kellermann
a0e4b6e266
output/alsa: fix out_frame_size formula, multiply with channels
...
The hard-coded "3 bytes" was wrong because it ignored the number of
channels.
2012-04-23 21:54:08 +02:00
Max Kellermann
c22cbbf828
Merge branch 'v0.16.x'
...
Conflicts:
src/output/osx_plugin.c
src/text_input_stream.c
2012-04-05 00:45:39 +02:00
Max Kellermann
5acee73fc8
encoder/vorbis: generate end-of-stream packet when playback ends
...
Add the encoder_plugin method end(). This is important for the
recorder plugin.
2012-04-05 00:21:53 +02:00
Max Kellermann
a9edf85a69
output/jack: check for connection failure before starting playback
2012-04-04 21:40:56 +02:00
Max Kellermann
e7a1862517
output/jack: workaround for libjack1 crash bug
2012-04-04 21:38:29 +02:00
Max Kellermann
8ff0197a43
output/osx: use the fifo_buffer library instead of rolling own
...
The existing buffer implementation has a major flaw: it is unable to
re-fill the buffer until it has been consumed completely, leading to
many occasions where the render callback needs to generate silence,
just because the play() implementation was unable to append more
data. The fifo_buffer library handles that well.
2012-03-28 21:51:17 +02:00
Max Kellermann
a2b5db0003
audio_format: remove SAMPLE_FORMAT_DSD_OVER_USB
...
DSD-over-USB should not be a MPD core format, because it is not a
"natural" format; it is just a temnporary over-the-wire format. This
format has been implemented in pcm_export, and does not need to be
supported by pcm_convert.
2012-03-27 01:22:50 +02:00
Max Kellermann
2803ec2e96
output/alsa: support 32 bit DSD-over-USB
2012-03-27 01:22:50 +02:00
Max Kellermann
ddd4f675a2
pcm_export: implement 24 to 32 bit conversion
...
For 32 bit DSD-over-USB support.
2012-03-27 01:22:50 +02:00
Max Kellermann
d271dd2cce
output/alsa: use pcm_export for the DSD-over-USB conversion
2012-03-27 01:22:50 +02:00
Max Kellermann
ebfdd37451
pcm_export: support DSD to DSD-over-USB conversion
...
Prepare for removing SAMPLE_FORMAT_DSD_OVER_USB.
2012-03-27 01:17:11 +02:00
Max Kellermann
f6d6110aaa
output/alsa: move pcm_export_open() to caller
...
Give the caller more control, prepare for DSD-over-USB improvements.
2012-03-27 01:17:11 +02:00
Max Kellermann
2f0674807c
output/alsa: more debug output
2012-03-27 00:14:37 +02:00
Max Kellermann
167242fec0
output/alsa: add option to enable DSD over USB
2012-03-22 01:30:16 +01:00
Max Kellermann
725fbe946b
output/alsa: split the frame_size attribute
...
Make it in_frame_size and out_frame_size, to account for packing.
2012-03-22 01:01:11 +01:00
Max Kellermann
b99ecb4dc9
audio_format: remove the packed S24 format
...
For simplicity, the MPD core should not have to deal with packing. It
is rarely used, and those plugins that need it should use the
pcm_export library instead.
2012-03-22 00:42:12 +01:00
Max Kellermann
208a96b211
output/alsa: use pcm_export to pack 24 bit samples
2012-03-22 00:33:59 +01:00
Max Kellermann
43774455cc
output/oss: use pcm_export to pack 24 bit samples
2012-03-22 00:33:40 +01:00
Max Kellermann
5b61e077e0
pcm_export: add option "pack"
...
Converts padded 24 bit samples to packed 24 bit samples. Will replace
the packed S24 sample format, which is not used internally.
2012-03-22 00:33:40 +01:00
Max Kellermann
921cc3e5db
output/oss: remember the real OSS format
...
Improving oss_reopen() by using the very same value that was used
initially.
2012-03-22 00:33:40 +01:00
Max Kellermann
51dce3d161
output/alsa: simplify setup_format()
2012-03-22 00:29:56 +01:00
Max Kellermann
c10f013fc2
output/alsa: don't pass audio_format to _try_format()
...
Let the caller configure the audio_format object.
2012-03-22 00:24:56 +01:00
Max Kellermann
2874d68bdb
output/alsa: simplify alsa_output_try_format_both()
...
Merge three functions into one and call get_bitformat() only once.
2012-03-22 00:23:07 +01:00