Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Makefile.am: distribute pcm_pack.h | Max Kellermann | 2010-03-28 | 1 | -0/+1 |
| | | | | Fix distcheck. | ||||
* | Add support for building httpd_output plugin for win32 | Avuton Olrich | 2010-03-22 | 2 | -0/+10 |
| | |||||
* | Define winnt or greater on mingw32 to take advantage of get*info(). | Avuton Olrich | 2010-03-21 | 2 | -0/+2 |
| | |||||
* | strtok() is recursive by default on win32. | Avuton Olrich | 2010-03-21 | 1 | -0/+4 |
| | |||||
* | Add support for MixRamp tags | Tim Phipps | 2010-03-21 | 22 | -19/+478 |
| | | | | | Adds mixrampdb and mixrampdelay commands. Reads MIXRAP_START and MIXRAMP_END tags from FLAC files and overlaps instead of crossfading. | ||||
* | AudioCompress: explicitly include stdint.h | Max Kellermann | 2010-03-17 | 1 | -0/+1 |
| | | | | For int16_t. | ||||
* | decoder_api: use the correct format to calculate elapsed time | Max Kellermann | 2010-03-17 | 1 | -1/+1 |
| | | | | | | When decoder->timestamp is calculated, the PCM data is already converted to out_audio_format; using in_audio_format may cause funny speedups/slowdowns. | ||||
* | command: allow "update" with slash or empty path | Max Kellermann | 2010-03-12 | 1 | -1/+4 |
| | | | | | | | When handle_update() was modified to use uri_safe_local(), suddently "mpc update ''" and "mpc update '/'" stopped working, because both are not a "safe" local URI. This patch adds a special case for these, to retain backwards compatibility. | ||||
* | output: added option "always_on" for radio stations | Max Kellermann | 2010-03-10 | 8 | -2/+73 |
| | | | | | | | Did you ever accidently click "stop" while feeding a radio station? This option sets the output device to "pause" to disable the "close" method. It falls back to "pause" then, which is specific to the plugin. Some plugins implement it by feeding silence. | ||||
* | output/jack: drain the ring buffers during pause | Max Kellermann | 2010-03-10 | 1 | -0/+7 |
| | | | | | 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. | ||||
* | output/jack: synchronize all channels | Max Kellermann | 2010-03-10 | 1 | -9/+26 |
| | | | | | Always use the same number of samples from each channel's ring buffer. This ensures that all channels are kept in sync. | ||||
* | decoder/ffmpeg: fix indentation | Max Kellermann | 2010-03-07 | 1 | -6/+6 |
| | |||||
* | decoder/ffmpeg: implement the libavutil log callback | Max Kellermann | 2010-02-27 | 2 | -0/+32 |
| | | | | Pass everything to the GLib logging library. No direct stderr access. | ||||
* | decoder/ffmpeg: don't close the AVFormatContext after open failure | Max Kellermann | 2010-02-27 | 1 | -1/+0 |
| | | | | The pointer is invalid if av_open_input_file() fails. | ||||
* | command: "update" checks if the path is malformed | Max Kellermann | 2010-02-27 | 2 | -2/+17 |
| | | | | | | This is a very basic check, which only ensures that the path does not begin with a slash, doesn't have double slashes and the special names "." and ".." are forbidden. | ||||
* | uri: allow leading dots, but explicitly exclude "." and ".." | Max Kellermann | 2010-02-27 | 1 | -1/+4 |
| | | | | | Dots at the beginning of an URI segment are ok, as long as the special names "." and ".." are not used. | ||||
* | update: log start/finish of the update thread | Max Kellermann | 2010-02-27 | 1 | -1/+11 |
| | |||||
* | replay_gain: optionally use hardware mixer to apply replay gain | Max Kellermann | 2010-02-17 | 8 | -6/+116 |
| | | | | | | | | | | Add an option for each audio output which enables the use of the hardware mixer, instead of the software volume code. This is hardware specific, and assumes linear volume control. This is not the case for hardware mixers which were tested, making this patch somewhat useless, but we will use it to experiment with the settings, to find a good solution. | ||||
* | replay_gain: fall back to track gain if album gain is unavailable | Max Kellermann | 2010-02-17 | 4 | -2/+19 |
| | |||||
* | replay_gain: reimplement as a filter plugin | Max Kellermann | 2010-02-17 | 18 | -161/+310 |
| | | | | | | | Apply the replay gain in the output thread. This means a new setting will be active instantly, without going through the whole music pipe. And we might have different replay gain settings for each audio output device. | ||||
* | replay_gain_info: allocate the struct statically | Max Kellermann | 2010-02-17 | 10 | -133/+71 |
| | | | | | | Don't allocate each replay_gain_info object on the heap. Those objects who held a pointer now store a full replay_gain_info object. This reduces the number of allocations and heap fragmentation. | ||||
* | replay_gain_info: use INFINITY to mark undefined values | Max Kellermann | 2010-02-17 | 2 | -3/+3 |
| | | | | | | | | | The previous patch not only moved code, it also changed the check. Negative gain values seem to be valid after all, there just was the "magic" value 0.0 which means "not available". This patch changes the "magic" value to "INFINITY", and uses the C99 function isinf() to check. It might have been a better idea to use "NAN", but the "NAN" macro is a GNU extension. | ||||
* | replay_gain_state: moved code to replay_gain_tuple_scale() | Max Kellermann | 2010-02-15 | 3 | -19/+21 |
| | | | | | Moved (and renamed) the function calc_replay_gain_scale() to replay_gain_info.c. | ||||
* | replay_gain: added function defined() | Max Kellermann | 2010-02-15 | 2 | -12/+18 |
| | | | | This function determines whether replay gain data is available. | ||||
* | filter/volume: assign dest_size_r early, eliminate one | Max Kellermann | 2010-02-15 | 1 | -4/+3 |
| | |||||
* | Makefile.am: remove sticker.xml | Max Kellermann | 2010-02-08 | 1 | -1/+1 |
| | |||||
* | doc: deleted sticker specification proposal | Max Kellermann | 2010-02-08 | 2 | -94/+0 |
| | | | | | This document has been unmaintained for more than a year now (since the day it was submitted). | ||||
* | command: "listplaylist" dumps playlist files | Max Kellermann | 2010-02-08 | 4 | -5/+74 |
| | | | | Same for "listplaylistinfo". | ||||
* | playlist_queue: moved code to playlist_mapper.c | Max Kellermann | 2010-02-08 | 4 | -70/+139 |
| | |||||
* | playlist_queue: moved check_translate_song() to playlist_song.c | Max Kellermann | 2010-02-08 | 4 | -118/+174 |
| | |||||
* | song_print: song_print() returns void | Max Kellermann | 2010-02-08 | 3 | -10/+12 |
| | | | | The only "return" statement always returns 0. | ||||
* | ffmpeg: read more metadata. | Anton Khirnov | 2010-02-02 | 1 | -1/+12 |
| | |||||
* | decoder/flac: fix replay gain (short-circuiting "or") | Tim Phipps | 2010-01-28 | 1 | -8/+13 |
| | |||||
* | configure.ac: new libwrap autoconf test | Max Kellermann | 2010-01-20 | 2 | -33/+23 |
| | | | | Use MPD_AUTO_RESULT(). Don't force libwrap by default. | ||||
* | client: optionally use libwrap | Davide Camurri | 2010-01-20 | 5 | -0/+72 |
| | |||||
* | decoder/wavpack: fixed WVC URI | Max Kellermann | 2010-01-20 | 1 | -4/+5 |
| | | | | Pass the current URI to wavpack_open_wvc(). | ||||
* | decoder/ffmpeg: call decoder_timestamp() once per packet | Max Kellermann | 2010-01-18 | 1 | -5/+5 |
| | |||||
* | decoder/ffmpeg: merged ffmpeg_helper() into ffmpeg_decode() | Max Kellermann | 2010-01-18 | 1 | -116/+67 |
| | |||||
* | decoder/ffmpeg: optimized the stream_tag() method | Max Kellermann | 2010-01-18 | 1 | -25/+27 |
| | | | | Don't use the function ffmpeg_helper(), don't initialize the codec. | ||||
* | decoder/ffmpeg: free AVFormatContext on error | Max Kellermann | 2010-01-18 | 1 | -0/+4 |
| | | | | Fix a memory leak in some code paths. | ||||
* | decoder_api: removed function decoder_get_uri() | Max Kellermann | 2010-01-18 | 7 | -54/+11 |
| | | | | Use input_stream.uri. | ||||
* | input_stream: added attribute "uri" | Max Kellermann | 2010-01-18 | 8 | -10/+18 |
| | |||||
* | input_stream: added function input_stream_deinit() | Max Kellermann | 2010-01-18 | 9 | -2/+16 |
| | | | | All close() implementations must call this method. | ||||
* | Merge release 0.15.8 from branch 'v0.15.x | Max Kellermann | 2010-01-18 | 4 | -8/+45 |
|\ | | | | | | | | | | | | | | | | | Conflicts: Makefile.am NEWS configure.ac src/decoder/ffmpeg_decoder_plugin.c src/decoder_thread.c | ||||
| * | mpd version 0.15.8release-0.15.8 | Avuton Olrich | 2010-01-18 | 2 | -2/+2 |
| | | |||||
| * | decoder/ffmpeg: added more MIME types | Max Kellermann | 2010-01-17 | 1 | -0/+6 |
| | | | | | | | | Taken from the ffmpeg sources. | ||||
| * | Makefile.am: link test/run_decoder and test/read_tags with timer.c | Max Kellermann | 2010-01-17 | 1 | -0/+2 |
| | | | | | | | | Needed for the fluidsynth decoder plugin. | ||||
| * | decoder/ffmpeg: append file name suffix to virtual stream URL | Max Kellermann | 2010-01-17 | 2 | -4/+29 |
| | | | | | | | | | | | | | | To allow libavformat to detect the format of the input file, append the suffix of the input file to the URL of the virtual stream. This specifically enables the "shorten" codec, which is supported by libavformat/raw.c, detected only by the suffix. | ||||
| * | configure.ac: disable -Wdeclaration-after-statement | Max Kellermann | 2010-01-17 | 1 | -1/+0 |
| | | | | | | | | Allow declaration after statement. | ||||
| * | queue: don't repeat current song in consume mode | Max Kellermann | 2010-01-16 | 2 | -2/+3 |
| | | | | | | | | | | Check consume mode in queue_next_order(), because the current song would be deleted as soon as it's finished; it cannot be played again. |