aboutsummaryrefslogtreecommitdiffstats
path: root/src/filter (unfollow)
Commit message (Collapse)AuthorFilesLines
2010-08-23ReplayGain filter: allow gain > 100 %Johan Kiviniemi1-3/+11
The ReplayGain filter clamped the gain to max. 100 % even if the algorithm determined the signal needed a boost. That would result in any such tracks being played with too low volume, effectively defeating the purpose of the filter.
2010-06-06filter/route: fixed unsigned/signed comparisonMax Kellermann1-1/+1
Fixes a clang warning.
2010-05-30filter/replay_gain: added option "replaygain_limit"Daniel Seuthe1-5/+2
2010-05-18replay_gain_config: added function replay_gain_get_real_mode()Daniel Seuthe1-11/+2
2010-05-02filter/replay_gain: removed duplicate *dest_size_r assignmentMax Kellermann1-1/+0
2010-04-25replay_gain: added mode "auto"Daniel Seuthe1-3/+16
2010-02-17replay_gain: optionally use hardware mixer to apply replay gainMax Kellermann2-0/+58
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.
2010-02-17replay_gain: fall back to track gain if album gain is unavailableMax Kellermann1-2/+3
2010-02-17replay_gain: reimplement as a filter pluginMax Kellermann2-0/+230
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.
2010-02-15filter/volume: assign dest_size_r early, eliminate oneMax Kellermann1-4/+3
2009-12-31Update copyright notices.Avuton Olrich11-11/+11
2009-12-25filter: added the "autoconvert" filter pluginMax Kellermann2-0/+203
2009-12-25filter_plugin: allow open() to force an input formatMax Kellermann6-33/+47
Make the audio_format argument non-const. Allow the open() method to modify it, to indicate that it wants a different input audio format than the one specified. Check that condition in chain_filter_open(), and fail.
2009-12-25filter/volume: support 32 bit samplesMax Kellermann1-8/+0
The pcm_volume library supports 32 bit samples, there's no reason to disallow it in the filter plugin.
2009-12-25filter/route: check configured channel count in method init()Max Kellermann1-8/+9
Detect misconfiguration during MPD startup, not when playback begins.
2009-12-25filter/route: route_filter_parse() returns boolMax Kellermann1-3/+6
Indicate success and error.
2009-12-25filter/chain: return NULL if a filter() method has failedMax Kellermann1-1/+1
Don't close child filters in the filter() method.
2009-12-14filter: added normalize filter pluginMax Kellermann1-0/+123
Wrap the AudioCompress library in a filter plugin.
2009-12-14Fixed memory leak on incorrect route configurationAlbin Eldstål-Damlin1-0/+4
2009-12-14Split filter_config into its own moduleAlbin Eldstål-Damlin2-109/+0
2009-12-14Error reporting, pcm_buffer, performance tweaksAlbin Eldstål-Damlin1-52/+48
2009-12-14Initial filter chain and filter configuration for outputs.Albin Eldstål-Damlin2-0/+111
2009-12-14Initial (statically configured) route filter pluginAlbin Eldstål-Damlin1-0/+345
2009-12-02audio_format: changed "bits" to "enum sample_format"Max Kellermann1-2/+3
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.
2009-11-12include config.h in all sourcesMax Kellermann4-0/+4
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.
2009-07-23pcm_convert: use GError for error handlingMax Kellermann1-11/+3
Don't abort the whole MPD process when the conversion fails. This has been a denial-of-service attack vector for years.
2009-07-22filter/volume: check the flag audio_format.reverse_endianMax Kellermann1-0/+7
The volume plugin does not work for reverse_endian samples.
2009-07-19Add reverse_endian field to struct audio_format and handle conversionDavid Woodhouse1-0/+1
2009-07-06mixer/software: new mixer which controls filter/volumeMax Kellermann1-0/+1
This mixer plugin may be used instead of the traditional global software mixer. It integrates with the "volume" filter plugin, and can control the software volume of an audio output which has no hardware mixer.
2009-07-06filter/convert: new filter which calls pcm_convert() on demandMax Kellermann2-0/+190
2009-07-06filter/chain: new library for creating a chain of filtersMax Kellermann2-0/+225
2009-07-05filter/volume: don't use volume_level_get()Max Kellermann2-6/+67
Added public methods to get and set the current volume.
2009-07-03filter: added "volume" pluginMax Kellermann1-0/+136
The "volume" filter plugin will replace the current software volume code. One "volume" filter may be attached to each output device. This will allow the user to use hardware mixers for some devices, and software mixers for other devices at the same time. Currently, neither the filter API nor the "volume" plugin is integrated into MPD.
2009-07-03filter: added new plugin API for filtersMax Kellermann1-0/+93
The filter API allows us to implement software volume as a pluggable filter, and we will be able to integrate libraries like SoX.