| Commit message (Collapse) | Author | Files | Lines |
|
|
|
Map LogLevel::INFO to G_LOG_LEVEL_INFO, and LogLevel::DEFAULT to
G_LOG_LEVEL_MESSAGE. Now client connect/disconnect message are only
logged on log_level "secure".
|
|
Prepare to migrate away from GLib. Currently, we're still using GLib
as a backend.
|
|
The MPD core will add this as a prefeix.
|
|
Replaces GLib's GError.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Eliminate the g_usleep() call.
|
|
|
|
|
|
Pass audio_output objects around instead of void pointers. This will
give some more control to the plugin, and prepares for non-blocking
audio outputs.
|
|
Move the "extern" declarations from output_list.c, for more type
safety.
|
|
|
|
If we're not doing this, and a new song is played after pause ends,
then you will hear the rest of the previous song.
|
|
Always use the same number of samples from each channel's ring
buffer. This ensures that all channels are kept in sync.
|
|
|
|
This patch prepares support for floating point samples (and probably
other formats). It changes the meaning of the "bits" attribute from a
bit count to a symbolic value.
|
|
After we've been hit by Large File Support problems several times in
the past week (which only occur on 32 bit platforms, which I don't
have), this is yet another attempt to fix the issue.
|
|
|
|
Make valgrind happy.
|
|
Same as the previous patch: create up to 16 configured source ports.
The plugin tries to do its best at guessing the right combination for
the given input file, the number of source and destination ports.
|
|
Support up to 16 configured destination ports, that should really be
enough for everybody.
|
|
Be more clear which kind of port should be configured here.
|
|
Use the same name as in the libjack API documentation.
|
|
When MPD plays a mono song (audio_format.channel==1), connect only one
source port to both destination ports.
|
|
After playback has stopped, the ring buffers may still contain
samples. These will be played when playback is started the next
time. We should clear the buffers each time.
|
|
jack_client_new() is deprecated. This requires libjack 0.100
(released nearly 5 years ago). We havn't been testing older libjack
versions anyway.
As a side effect, there is the new option "autostart".
|
|
Instead of using MPD's audio output name (setting "name"), use a
separate configuration option. Change the default to "Music Player
Daemon".
|
|
Don't connect to JACK before MPD has daemonized.
|
|
|
|
.. and keep up the JACK connection while MPD runs. Allocate the ring
buffers on the first open, and free them at MPD exit.
|
|
JACK doesn't need cancel() because it won't do much anyway. Buffers
are small.
|
|
It's a double pointer.
|
|
Don't disconnect from JACK during pause.
|
|
|
|
This updates the copyright header to all be the same, which is
pretty much an update of where to mail request for a copy of the GPL
and the years of the MPD project. This also puts all committers under
'The Music Player Project' umbrella. These entries should go
individually in the AUTHORS file, for consistancy.
|
|
The MPD core logs the audio format of all audio outputs. Remove the
duplicate message from the plugins.
|
|
Use GLib's GError library for reporting output device failures.
Note that some init() methods don't clean up properly after a failure,
but that's ok for now, because the MPD core will abort anyway.
|
|
audio_output_get_name() has been removed, which was the only function
left in output_api.h. The output plugin doesn't need the audio_output
object at all, remove the parameter from the init() method.
|
|
Use config_get_block_string("name") instead of audio_output_get_name().
|
|
Fix a gcc warning, initialize the "space" variable at the beginning of
mpd_jack_play().
|
|
The meaning of the chunk depends on the audio format; don't suggest a
specific format by declaring the pointer as "char*", pass "void*"
instead.
|
|
The old API required an output plugin to not return until all data
passed to the play() method is consumed. Some output plugins have to
loop to fulfill that requirement, and may block during that. Simplify
these, by letting them consume only part of the buffer: make play()
return the length of the consumed data.
|
|
Now that I've found this nice function in the GLib docs, we can
finally remove our custom sleep function. Still all those callers of
g_usleep() have to be migrated one day to use events, instead of
regular polling.
|
|
If an output plugin requires config.h, it should include it directly.
|