Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | audio_format: wildcards allowed in audio_format configuration | Max Kellermann | 2009-10-21 | 14 | -30/+118 |
| | | | | | | An asterisk means that this attribute should not be enforced, and stays whatever it used to be. This way, some configuration values work like masks. | ||||
* | audio_parser: moved code to separate functions | Max Kellermann | 2009-10-21 | 1 | -29/+78 |
| | |||||
* | output: convert config_audio_format to an audio_format struct | Max Kellermann | 2009-10-21 | 3 | -14/+16 |
| | | | | This allows more sophisticated audio format selection. | ||||
* | audio_parser: renamed parameter "error" to "error_r" | Max Kellermann | 2009-10-21 | 2 | -10/+12 |
| | | | | It's a double pointer. | ||||
* | audio: removed config_param.value NULL check | Max Kellermann | 2009-10-21 | 1 | -1/+1 |
| | | | | The value is always non-NULL. | ||||
* | output/jack: make ringbuffer_size a size_t | Max Kellermann | 2009-10-21 | 1 | -1/+1 |
| | |||||
* | output/jack: connect to server on MPD startup | Max Kellermann | 2009-10-21 | 2 | -69/+120 |
| | | | | | .. and keep up the JACK connection while MPD runs. Allocate the ring buffers on the first open, and free them at MPD exit. | ||||
* | output/jack: removed the empty "cancel" method | Max Kellermann | 2009-10-21 | 1 | -6/+0 |
| | | | | | JACK doesn't need cancel() because it won't do much anyway. Buffers are small. | ||||
* | output/jack: renamed parameter "error" to "error_r" | Max Kellermann | 2009-10-21 | 1 | -12/+12 |
| | | | | It's a double pointer. | ||||
* | output/jack: implement the "pause" method | Max Kellermann | 2009-10-21 | 2 | -0/+42 |
| | | | | Don't disconnect from JACK during pause. | ||||
* | output/jack: renamed source to jack_output_plugin.c | Max Kellermann | 2009-10-21 | 3 | -5/+5 |
| | |||||
* | pulse: code rewrite using the asynchronous libpulse API | Max Kellermann | 2009-10-21 | 8 | -283/+787 |
| | | | | | | | | This is a complete rewrite of the PulseAudio output plugin. It uses the asynchronous API, which gives us more control over everything. Additionally, it connects to the PulseAudio server on startup, and keeps this connection up while MPD runs. During pause, instead of closing the stream, it enables "cork". | ||||
* | mixer_plugin: pass audio_output pointer to mixer_plugin.init() | Max Kellermann | 2009-10-21 | 9 | -13/+21 |
| | | | | | This allows the mixer object to access its associated audio output object. | ||||
* | volume: added PIPE_EVENT_MIXER | Max Kellermann | 2009-10-21 | 2 | -0/+19 |
| | | | | | Flush the hardware volume cache, and send the MIXER idle event. This allows mixer plugins to detect volume changes. | ||||
* | mixer_plugin: use GError for error handling | Max Kellermann | 2009-10-20 | 11 | -85/+203 |
| | |||||
* | output_init: renamed parameter "error" to "error_r" | Max Kellermann | 2009-10-20 | 2 | -8/+8 |
| | | | | It's a double pointer. | ||||
* | mixer/{oss,alsa}: renamed the mixer source files | Max Kellermann | 2009-10-20 | 7 | -15/+17 |
| | |||||
* | output/pulse: renamed context to "Music Player Daemon" | Max Kellermann | 2009-10-20 | 2 | -1/+2 |
| | | | | This looks nicer in the PulseAudio manager than just "mpd". | ||||
* | pulse: renamed source files | Max Kellermann | 2009-10-20 | 5 | -10/+12 |
| | |||||
* | pulse: announce "media.role=music" | Max Kellermann | 2009-10-20 | 2 | -0/+3 |
| | | | | This allows PulseAudio to do some advanced tweaks. | ||||
* | main: call g_set_application_name() | Max Kellermann | 2009-10-20 | 1 | -0/+2 |
| | | | | | | I'm not sure about the advantages of calling g_set_application_name(), because I don't use a task manager (except for ps and kill), but it sure doesn't hurt. | ||||
* | mapper, update, ...: use g_build_filename(), G_DIR_SEPARATOR, ... | Max Kellermann | 2009-10-20 | 7 | -11/+10 |
| | | | | | Try to be as portable as possible, use GLib path name functions and macros. | ||||
* | Merged release 0.15.5 from branch 'v0.15.x' | Max Kellermann | 2009-10-18 | 4 | -10/+16 |
|\ | | | | | | | | | | | | | | | Conflicts: NEWS configure.ac src/decoder/flac_plugin.c src/update.c | ||||
| * | mpd version 0.15.5release-0.15.5 | Avuton Olrich | 2009-10-18 | 2 | -2/+2 |
| | | |||||
| * | decoder/flac: fixed two memory leaks in the CUE tag loader | Max Kellermann | 2009-10-16 | 2 | -2/+5 |
| | | | | | | | | | | | | Don't initialize "vc" and "cs" with FLAC__metadata_object_new(); that value is overwritten by FLAC__metadata_get_tags() and FLAC__metadata_get_cuesheet(). | ||||
| * | update: fixed memory leak during container scan | Max Kellermann | 2009-10-16 | 2 | -3/+7 |
| | | | | | | | | The return value of map_directory_child_fs() must be freed. | ||||
| * | update: song_file_new() cannot fail | Max Kellermann | 2009-10-16 | 1 | -3/+0 |
| | | | | | | | | | | Removed the NULL check. If that NULL check was correct, that would have been a memory leak (vtrack). | ||||
| * | output_thread: check again if output is open on CANCEL | Max Kellermann | 2009-10-16 | 2 | -1/+3 |
| | | | | | | | | | | | | | | | | When the player thread unpauses, it sends CANCEL to the output thread, after having checked that the output is still open. Problem is when the output thread closes the device before it can process the CANCEL command - race condition. This patch adds another "open" check inside the output thread. | ||||
* | | decoder/vorbis: avoid unused symbol warnings from vorbisfile.h | Serge Ziryukin | 2009-10-18 | 1 | -0/+1 |
| | | | | | | | | | | | | | | | | svn r13289 of libvorbis introduced static callbacks (like OV_CALLBACKS_DEFAULT) defined in "vorbisfile.h" header. First released version with this change is libvorbis-1.2.2. In libversion-1.2.3 OV_EXCLUDE_STATIC_CALLBACKS define was added to avoid warnings about unused static callbacks. Information on the OV_EXCLUDE_STATIC_CALLBACKS can be found in http://svn.xiph.org/trunk/vorbis/CHANGES. | ||||
* | | command: omitting the range end is possible | Max Kellermann | 2009-10-18 | 3 | -1/+19 |
| | | | | | | | | | | When the range end is missing, then the maximum possible value is assumed. | ||||
* | | command: use GLib limit macros in check_range() | Max Kellermann | 2009-10-18 | 1 | -10/+10 |
| | | | | | | | | These are portable and don't require limits.h. | ||||
* | | doc/protocol.xml: documented range parameter in "delete" | Max Kellermann | 2009-10-18 | 1 | -1/+4 |
| | | |||||
* | | command: allow changing replay gain mode on-the-fly | Max Kellermann | 2009-10-17 | 5 | -1/+99 |
| | | | | | | | | | | The new command "replay_gain_mode" allows the user to switch the replay gain mode on-the-fly. No more mpd.conf editing. | ||||
* | | replay_gain: moved mode parser to replay_gain_set_mode_string() | Max Kellermann | 2009-10-17 | 1 | -6/+19 |
| | | |||||
* | | replay_gain: added setting "replaygain off" | Max Kellermann | 2009-10-17 | 3 | -4/+4 |
| | | | | | | | | | | There was no setting for disabling replay gain. It was off when the "replaygain" setting was not there. | ||||
* | | replay_gain: read configuration even when replay gain is disabled | Max Kellermann | 2009-10-17 | 1 | -4/+3 |
| | | | | | | | | | | | | It will be possible to enable replay gain at runtime even when it is disabled in the configuration file. This patch enables the preamp settings in this case. | ||||
* | | update: obey .mpdignore files | Max Kellermann | 2009-10-16 | 6 | -3/+213 |
| | | |||||
* | | doc/user.xml: added chapter "Using MPD" | Max Kellermann | 2009-10-16 | 1 | -0/+56 |
| | | |||||
* | | doc/user.xml: added playlist plugin reference | Max Kellermann | 2009-10-16 | 1 | -9/+68 |
| | | |||||
* | | notify_queue: use g_timeout_add_seconds() | A. Klitzing | 2009-10-15 | 1 | -2/+2 |
| | | |||||
* | | player_thread: don't call audio_output_all_check() if paused | Max Kellermann | 2009-10-15 | 1 | -1/+2 |
| | | | | | | | | | | | | | | When the audio output fails to open, MPD pauses playback, but doesn't reset player.play_audio_format. This leads to an assertion failure in audio_output_all_check() on the next REFRESH command, because no audio output is open. | ||||
* | | Add PLS Parser | Qball Cow | 2009-10-15 | 5 | -1/+245 |
| | | |||||
* | | input/lastfm: removed obsolete last.fm input plugin | Max Kellermann | 2009-10-13 | 6 | -508/+1 |
| | | | | | | | | | | | | This has been replaced by the last.fm playlist plugin. The input plugin has never worked well, and was just a playground to experiment with the last.fm radio protocol. | ||||
* | | command: "load" supports remote playlists (m3u, xspf, lastfm://) | Max Kellermann | 2009-10-13 | 5 | -0/+150 |
| | | | | | | | | | | | | This patch integrates the playlist plugin API to the MPD core. We'll be able to do much more in the future with that API, that's just the beginning. | ||||
* | | main: initialize playlist plugins | Max Kellermann | 2009-10-13 | 1 | -0/+3 |
| | | |||||
* | | song: renamed attribute "url" to "uri" | Max Kellermann | 2009-10-13 | 13 | -45/+44 |
| | | |||||
* | | queue: no CamelCase | Max Kellermann | 2009-10-13 | 2 | -17/+17 |
| | | | | | | | | Renamed idToPosition. | ||||
* | | playlist: added plugin for last.fm radio | Max Kellermann | 2009-10-13 | 4 | -0/+335 |
| | | | | | | | | | | This plugin will replace the last.fm input plugin, once the playlist API is integrated into MPD. | ||||
* | | playlist: added XSPF plugin | Max Kellermann | 2009-10-13 | 4 | -0/+360 |
| | | |||||
* | | test/dump_playlist: try playlist_list_open_uri() first | Max Kellermann | 2009-10-13 | 1 | -21/+30 |
| | |