| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
pcm_buffer_get() cannot ever return NULL.
|
|
|
|
|
|
| |
When we don't have enough data, generate some silence, hoping the
input buffer will fill soon. Reducing the render buffer size is not
legal.
|
|
|
|
|
| |
Blocking inside the render callback is forbidden, and this sleep call
didn't make any sense.
|
|
|
|
|
|
| |
The OpenAL specification says that AL_FORMAT_MONO8 and
AL_FORMAT_STEREO8 expect unsigned 8 bit samples, but MPD uses unsigned
samples.
|
|
|
|
| |
.. instead of failing playback completely.
|
|
|
|
| |
Allow gcc to warn when a new format isn't supported.
|
|
|
|
| |
Wrap close(), use closesocket() on WIN32/WinSock.
|
|
|
|
|
| |
The server_socket library (used by the httpd output plugin) didn't
check for WIN32, that's fixed now.
|
|
|
|
|
| |
Allow enabling the plugin explicitly without running Solaris, to test
the build.
|
|
|
|
|
| |
Always lock the main loop when operating on PULSE objects. Document
this.
|
| |
|
|
|
|
| |
Eliminate an unnecessary source of deadlocks.
|
| |
|
|
|
|
|
| |
Fixes assertion failure when a stream callback is invoked too late
after a format change.
|
|
|
|
| |
Merge common code.
|
|
|
|
| |
Eliminate duplicate code.
|
|
|
|
|
| |
Check if the stream is suspended; wake up the main loop when it
becomes suspended.
|
| |
|
|
|
|
| |
Not a bool.
|
|
|
|
| |
Unlock the mainloop in all code paths.
|
| |
|
|
|
|
|
|
| |
This warning should only be logged when we really received something.
When the client disconnects, G_IO_IN is triggered, and the read
returns G_IO_STATUS_EOF.
|
|
|
|
|
|
|
| |
In the "vorbis" plugin, this is a copy of the old flush() method,
while flush() gets a lot of code remove, it just sets the "flush" flag
and nothing else. It doesn't start a new stream now, which should fix
a few problems in some players.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Fixes build failure on WIN32.
|
|\
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
NEWS
configure.ac
src/output/jack_plugin.c
src/update.c
|
| |
| |
| |
| |
| |
| | |
With mono sound, jack_sample_size is smaller than frame_size (4 vs 2
bytes), and "space/jack_sample_size==0". That means mpd_jack_play()
will return 0, although no error has occurred.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Version 1.0.0 of the libao library added a new field to the
ao_sample_format struct. It is a char * named matrix. When
an ao_sample_format is allocated on the stack, this field contains
garbage. The proper course is to insure that is initialized to NULL.
NULL indicates that we do not want any mapping.
The struct is now initialized using a static initializer, and this
technique is compatible with all known versions of libao.
|
| | |
|
| |
| |
| |
| | |
See code comment.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
According to the Solaris dsp manpage, AFMT_S24_PACKED is
little-endian:
http://download.oracle.com/docs/cd/E19963-01/821-1475/6nmf5baot/index.html
The Minix soundcard.h header says the same.
|
| |
| |
| |
| |
| | |
Remove trailing whitespace found by this command:
find -name '*.[ch]' | xargs grep "[[:space:]]$"
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes the following valgrind warning occuring on the first call of
httpd_output_read_page:
==20124== Conditional jump or move depends on uninitialised value(s)
==20124== at 0x425E65: httpd_output_read_page (httpd_output_plugin.c:240)
==20124== by 0x426087: httpd_output_open (httpd_output_plugin.c:279)
==20124== by 0x41D862: ao_open (output_plugin.h:206)
==20124== by 0x41E133: audio_output_task (output_thread.c:590)
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
NEWS
configure.ac
src/directory.h
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a MPD 0.16 regression: when playing a 24 bit file, the switch
to 16 bit was made only partially, after mBytesPerPacket and
mBytesPerFrame had already been applied.
That means mBytesPerFrame referred to 24 bit, and mBitsPerChannel
referred to 16 bits. Of course, that cannot work.
|
| | |
|
|\|
| |
| |
| |
| |
| | |
Conflicts:
NEWS
configure.ac
|
| |
| |
| |
| |
| |
| | |
After popular demand, I've switched the order of "artist" and "title"
in the stream title. There is no standard, and there is no reliable
way to parse those from the stream title.
|
| |
| |
| |
| |
| |
| | |
RFC 5334 10.3 defines the MIME type "audio/ogg". We could use
"application/ogg" as well, but we know for sure that we only emit
audio data.
|
| |
| |
| |
| | |
Include CoreServices/CoreServices.h.
|