aboutsummaryrefslogtreecommitdiffstats
path: root/NEWS (unfollow)
Commit message (Collapse)AuthorFilesLines
2009-12-31Makefile.am: added unit tests for the archive pluginsMax Kellermann1-0/+1
2009-12-29input/rewind: new input_stream wrapper to allow stream rewindingMax Kellermann1-0/+2
This replaces the rewinding buffer code from the CURL input plugin. It is more generic, and allows rewinding even when the server sends Icy-Metadata (which would have been too difficult to implement within the CURL plugin). This is a rather complex patch for the stable branch (v0.15.x), but it fixes a serious problem: the "vorbis" decoder plugin was unable to play streams with Icy-Metadata, because it couldn't rewind the stream after detecting the codec (Vorbis vs. FLAC).
2009-12-29decoder/{ffmpeg,flac,vorbis}: added more flac/vorbis MIME typesMax Kellermann1-0/+2
Support deprecated MIME types such as "audio/x-ogg". Support new types such as "audio/flac".
2009-12-27Modify version string to post-release version 0.15.8~gitAvuton Olrich1-0/+3
2009-12-27mpd version 0.15.7release-0.15.7Avuton Olrich1-1/+1
2009-12-27dbUtils: return multiple tag values per songMax Kellermann1-0/+1
When collecting tag values for the result set, add all of a song's tag values of the searched type. This affects the "list" command. Previously, "list" only considered the first tag value of a song.
2009-12-27playlist/cue: fill song.start_ms, .end_msMax Kellermann1-0/+1
This patch adds practical usefulness to the CUE playlist plugin.
2009-12-26decoder_thread: eliminate jitter after seek failureMax Kellermann1-0/+1
Don't clear the music pipe when seeking has failed - check the "seeking" flag instead of "command==SEEK". Clear the "seeking" flag in decoder_seek_error().
2009-12-26decoder/wavpack: allow fine-grained seekingMax Kellermann1-0/+1
First multiply the floating point return value of decoder_seek_where(), then cast to integer.
2009-12-25output_init: use the normalize filter pluginMax Kellermann1-0/+1
Use the plugin instead of the glue code in normalize.c. This is used wrapped inside a "autoconv" filter, to enable normalization for all input file formats.
2009-12-16archive/iso: renamed plugin to "iso9660"Max Kellermann1-0/+1
Based on libiso9660.
2009-12-15archive/zip: renamed plugin to "zzip"Max Kellermann1-0/+2
This plugin is based on libzzip.
2009-12-15iso, zip: fixed memory leak in destructorMax Kellermann1-0/+1
Free the "context" pointer in the method archive_plugin.close().
2009-12-15archive: close archive when stream is closedMax Kellermann1-0/+2
Fixes a memory leak: the "archive" input plugin opens the archive, but never closes it. This patch moves the responsibility for doing that to archive_plugin.open_stream(). This is an slight internal API change, but it is the simplest and least intrusive fix for the memory leak.
2009-12-15input/archive: close the archive file on errorMax Kellermann1-0/+1
Fixed memory leak in error handler.
2009-12-15input/file: don't fall back to parent directoryMax Kellermann1-0/+2
This code has never made any sense, and has broken some of the archive plugin.
2009-12-08mixer: explicitly close all mixers on shutdownMax Kellermann1-0/+1
Mixers with the "global" flag set aren't closed automatically when the output device is closed. Thus, they might still be open when MPD shuts down.
2009-12-08mapper: apply filesystem_charset to playlistsMax Kellermann1-0/+1
This fixes an inconsistency in the stored playlist subsystem: when obtaining the list of playlists (listplaylist, listplaylistinfo), the file names in the playlist directory are converted to UTF-8 (according to filesystem_charset), but when saving or loading playlists, the filesystem_charset setting was ignored.
2009-12-08command: verify playlist name in the "rm" commandMax Kellermann1-0/+1
Call spl_valid_name() in spl_delete().
2009-12-08mapper: fix memory leak when playlist_directory is not setMax Kellermann1-0/+1
Don't allocate the file name before the playlist_dir==NULL check.
2009-12-02compress: upgraded to AudioCompress 2.0J. Shagam1-0/+1
Copied sources from http://beesbuzz.biz/code/audiocompress/AudioCompress-2.0.tar.gz [mk: created this patch under fluffy's name and fixed some gcc signed/unsigned comparison warnings]
2009-11-30tag_id3: fix ID3v1 charset conversionsvitoos1-0/+2
If we define id3v1_encoding, then the tags are not added to the database.
2009-11-30ffmpeg: don't try to force stereoMax Kellermann1-0/+2
The plugin code tried to force libavcodec to supply stereo samples. That however has never actually worked. By removing this code, we are able to play surround files for the first time.
2009-11-19pcm_mix: implemented 32 bit supportMax Kellermann1-1/+1
2009-11-19pcm_volume: implemented 32 bit supportMax Kellermann1-0/+1
Support 32 bit samples with software mixer.
2009-11-18Modify version string to post-release version 0.15.7~gitAvuton Olrich1-0/+3
2009-11-18mpd version 0.15.6release-0.15.6Avuton Olrich1-1/+1
2009-11-18decoder/flac: fixed NULL pointer dereference in CUE codeMax Kellermann1-0/+1
The function flac_vtrack_tnum() was missing a strrchr()==NULL check.
2009-11-17encoder: introducing flac encoder pluginViliam Mateicka1-0/+2
2009-11-15id3: allow 4 MB RIFF/AIFF tagsMax Kellermann1-0/+2
Allow RIFF/AIFF ID3 tags up to 4 MB (old limit was 256 kB). This might still be too small for some users, and when somebody complains, we might do something more clever (like streaming the data into libid3tag?).
2009-11-15decoder/ffmpeg: align the output bufferMax Kellermann1-0/+1
On some platforms, libavcodec wants the output buffer aligned to 16 bytes (because it uses SSE/Altivec internally). It will segfault when you don't obey this rule.
2009-11-14decoder/mikmod: sample rate is configurableMax Kellermann1-0/+1
The new option "sample_rate" sets the sample rate for libmikmod.
2009-11-11decoder/wavpack: allow more than 2 channelsMax Kellermann1-0/+1
Remove the OPEN_2CH_MAX option. MPD's support for surround sound is still clunky, but we're working on it.
2009-11-11decoder/wavpack: activate 32 bit supportMax Kellermann1-0/+1
MPD has been supporting 32 bit samples since version 0.15. This patch changes one check, and removes the 32->24 conversion code. Note that WavPack floating point samples have 32 bits, and MPD doesn't have a special check for floating point - therefore, this WavPack plugin still returns 24 bit integer samples as before (until we have float support in the MPD core).
2009-11-11decoder/flac: fixed CUE seeking range checkMax Kellermann1-0/+1
If flac_container_decode() gets a seek destination which is out of range, it ignores the SEEK command (never finishes it). This leads to MPD lockup, because the player thread waits for completion.
2009-11-11oggflac: rewind stream after FLAC detectionMax Kellermann1-0/+1
The oggflac plugin has been completely broken for quite a while and nobody has noticed - maybe we should remove it?
2009-11-10configure.ac: require GLib 2.12Max Kellermann1-1/+1
Drop the required GLib version from 2.16 to 2.12, because many current systems still don't have GLib 2.16. This requires several new compatibility functions in glib_compat.h.
2009-11-10zzip: require libzzip 0.13Max Kellermann1-0/+2
We need the function zzip_file_stat().
2009-11-10input/mms: require libmms 0.4Max Kellermann1-0/+1
We're using API functions which are not available in 0.3.
2009-11-10sticker: added fallback for sqlite3_prepare_v2()Max Kellermann1-0/+1
This function was not present in SQLite < 3.4.
2009-11-10input/lastfm: fixed variable name in GLib<2.16 code pathMax Kellermann1-0/+2
Should be "lastfm_user", not "lastfm_username".
2009-11-09output/alsa: fill period buffer with silence before drainingMax Kellermann1-0/+1
ALSA passes full period buffers to the hardware. If an application doesn't finish writing a period, libasound will nonetheless send the partial buffer (with undefined trailing data). This causes noise at the end of playback. This patch attempts to track the current position within the period buffer, and generates silence at the end, before calling snd_pcm_drain().
2009-11-09player_thread: drain audio outputs at the end of the playlistMax Kellermann1-0/+2
When there's no queued song, and the current one has finished playing, first make sure that the hardware outputs have really finished playing the last chunk: call the drain() method in all audio outputs. Without this patch, MPD stopped playback shortly before the ALSA sound card had finished playing.
2009-11-07set the close-on-exec flag on all file descriptorsMax Kellermann1-0/+1
Added the "fd_util" library, which attempts to use the new thread-safe Linux system calls pipe2(), accept4() and the options O_CLOEXEC, SOCK_CLOEXEC. Without these, it falls back to FD_CLOEXEC, which is not thread safe. This is particularly important for the "pipe" output plugin (and others, such as JACK/PulseAudio), because we were heavily leaking file descriptors to child processes.
2009-11-07log: redirect stdout/stderr to /dev/null if syslog is usedMax Kellermann1-0/+1
Don't hold a file descriptor on root's tty when syslog is used for logging.
2009-11-07output/jack: added option "server_name"Max Kellermann1-1/+1
2009-11-06output/jack: dynamic source port listMax Kellermann1-1/+1
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.
2009-11-06output/jack: renamed option "ports" to "destination_ports"Max Kellermann1-0/+1
Be more clear which kind of port should be configured here.
2009-11-06playlist: added extm3u pluginMax Kellermann1-1/+1
This new plugin parses extm3u files. Files without the "#EXTM3U" header are still parsed by the plain old "m3u" plugin.
2009-11-05output/httpd: bind port when output is enabledMax Kellermann1-1/+2
Implement the methods enable() and disable(). Bind the HTTP port in the enable() method, but reject all incoming connections until the output is opened.