Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2013-12-29 | command: "lsinfo" and "readcomments" allowed for remote files | Max Kellermann | 4 | -0/+59 | |
2013-12-29 | SongUpdate: read tags from songs in an archive | Max Kellermann | 3 | -5/+128 | |
Add the TagStream.cxx library, similar to TagFile.cxx, and use it to load tags from song files inside archives. | |||||
2013-12-29 | InputStream: add static method OpenReady() | Max Kellermann | 7 | -15/+41 | |
Merge some duplicate code. | |||||
2013-12-29 | TagFile: rewind the stream before trying the next plugin | Max Kellermann | 1 | -1/+2 | |
Got lost in commit c97685fe | |||||
2013-12-29 | DecoderList: add "pure" attribute | Max Kellermann | 1 | -0/+1 | |
2013-12-29 | DecoderList: add function decoder_plugins_supports_suffix() | Max Kellermann | 4 | -54/+20 | |
Replaces decoder_plugin_from_suffix(). | |||||
2013-12-29 | DecoderThread: use decoder_plugins_try() | Max Kellermann | 1 | -32/+44 | |
.. instead of decoder_plugin_from_suffix(). This reduces overhead by walking the array only once. | |||||
2013-12-29 | UpdateContainer: pass suffix instead of DecoderPlugin | Max Kellermann | 3 | -6/+18 | |
Instead of using the first DecoderPlugin that supports the suffix, use the first one that actually implements the "container_scan" method. | |||||
2013-12-29 | TagFile: pass reference instead of pointer | Max Kellermann | 5 | -9/+6 | |
2013-12-29 | TagFile: use decoder_plugins_try() | Max Kellermann | 1 | -41/+54 | |
.. instead of decoder_plugin_from_suffix(). This reduces overhead by walking the array only once. | |||||
2013-12-29 | DecoderList: remove unused function decoder_plugin_from_mime_type() | Max Kellermann | 2 | -25/+0 | |
2013-12-29 | daemon: no initgroups() when already running as the configured user | Max Kellermann | 1 | -1/+5 | |
We can assume that initgroups() would be a no-op in that case, however initgroups() is not allowed for unprivileged users anyway. | |||||
2013-12-29 | Daemon: fix typo in comment | Max Kellermann | 1 | -1/+1 | |
2013-12-29 | Daemon: simplify nested "if" | Max Kellermann | 1 | -5/+4 | |
2013-12-29 | Daemon: fix typo in cast | Max Kellermann | 1 | -1/+1 | |
2013-12-29 | input/smbclient: new input plugin | Max Kellermann | 4 | -0/+238 | |
2013-12-29 | ls: add "pure" attribute | Max Kellermann | 1 | -0/+3 | |
2013-12-28 | pcm/Volume: remove unused function pcm_volume_dither() | Max Kellermann | 1 | -16/+0 | |
2013-12-28 | pcm/PcmMix: improved dithering | Max Kellermann | 4 | -19/+38 | |
Use the existing PcmDither library. | |||||
2013-12-28 | pcm/Volume: improved dithering | Max Kellermann | 4 | -20/+54 | |
Instead of just adding a rectangular random value before shifting back to the normal scale, use the existing PcmDither library. | |||||
2013-12-28 | pcm/PcmDither: inline Dither24To16() and Dither32To16() | Max Kellermann | 2 | -3/+4 | |
2013-12-28 | pcm/Volume: remove optimized i386 assembly | Max Kellermann | 1 | -50/+0 | |
This code is unable to dither. Until we implement that, let's remove the code for now. i386 isn't relevant anymore anyway. | |||||
2013-12-25 | pcm/Traits: use 32 bit integer for S8 long_type | Max Kellermann | 1 | -1/+1 | |
16 bit is not enough for volume calculations. | |||||
2013-12-24 | pcm/Dither: add API documentation | Max Kellermann | 1 | -0/+18 | |
2013-12-24 | pcm/Dither: move shift from DitherConvert() to Dither() | Max Kellermann | 1 | -2/+2 | |
All callers need this shift, so let's move it to the basic method. | |||||
2013-12-24 | pcm/Dither: rename DitherShift() to DitherConvert() | Max Kellermann | 2 | -11/+11 | |
2013-12-24 | PlayerThread: log the last song that was played | Max Kellermann | 1 | -1/+4 | |
2013-12-24 | OutputControl: update both ReplayGainFilters | Max Kellermann | 1 | -0/+2 | |
The "mode" of the second ReplayGainFilter was never set, and thus replay gain was never applied to the new song during cross-fade. | |||||
2013-12-24 | OutputThread: handle failing ReplayGainFilter::Open() | Max Kellermann | 1 | -4/+10 | |
Since opening the PcmVolume object can now fail, this case must be handled. | |||||
2013-12-23 | pcm/Volume: convert to class | Max Kellermann | 4 | -132/+156 | |
Prepare for adding state. | |||||
2013-12-23 | pcm/Volume: apply volume into destination buffer | Max Kellermann | 1 | -21/+37 | |
2013-12-23 | pcm/Volume: convert i386 code to template specialization | Max Kellermann | 1 | -42/+42 | |
2013-12-23 | pcm/Volume: move code to template pcm_volume_sample() | Max Kellermann | 1 | -7/+16 | |
2013-12-23 | pcm/PcmVolume: rename to Volume.cxx | Max Kellermann | 7 | -6/+6 | |
2013-12-23 | pcm/PcmConvert: move the Domain instance to Domain.cxx | Max Kellermann | 6 | -9/+56 | |
Rename pcm_convert_domain to pcm_domain. Move it out so we can use it without depending on the whole PcmConvert library. | |||||
2013-12-23 | ConfigData: initialise "used" in second constructor | Max Kellermann | 1 | -1/+1 | |
2013-12-22 | pcm/Dither: convert remaining methods to templates | Max Kellermann | 2 | -26/+39 | |
Use the SampleTraits template and let the compiler generate a special case for S32 instead of reusing S24_P32. | |||||
2013-12-22 | pcm/Dither: generic sample dithering using template | Max Kellermann | 2 | -13/+25 | |
2013-12-22 | pcm/Traits: include stddef.h for size_t | Max Kellermann | 1 | -0/+1 | |
2013-12-22 | pcm/Traits: add MIN and MAX | Max Kellermann | 2 | -9/+28 | |
Move from PcmClamp(). | |||||
2013-12-22 | pcm/Volume: add constant PCM_VOLUME_BITS | Max Kellermann | 2 | -1/+6 | |
2013-12-22 | pcm/Volume: make PCM_VOLUME_1 a "constexpr" | Max Kellermann | 3 | -13/+13 | |
2013-12-22 | pcm/Prng: make pcm_prng() inline | Max Kellermann | 1 | -1/+1 | |
2013-12-22 | util/Clamp: generic Clamp() function | Max Kellermann | 3 | -3/+53 | |
2013-12-21 | event/PollGroupPoll: include stddef.h instead of string.h | Max Kellermann | 1 | -1/+2 | |
2013-12-21 | input/alsa: fix build with gcc 4.6 | Max Kellermann | 1 | -12/+12 | |
2013-12-20 | fix FfmpegDecoderPlugin to use relative timestamps | Steven O'Brien | 1 | -4/+6 | |
2013-12-19 | add draft ALSA input plugin | Steven O'Brien | 4 | -0/+244 | |
I've created an elementary input plugin that plays sound from the soundcard, so you can use MPD to listen to anything connected to the line-in jack, or to Video4Linux FM radio cards that send audio through the soundcard. There has been a small number of posts here in the past requesting line-in input, so here is a first, simplistic stab at it. The patch adds a new sheme, alsa://, which causes mpd to play data read directly from a souncdard. It defaults to hw:0,0, but you can pass any ALSA device name in the URI. So, using mpc for example: mpc add alsa:// mpc play will play from device hw:0,0. To use a diffferent device: mpc add alsa://hw:1,0 | |||||
2013-12-19 | output/osx: fix typo | Max Kellermann | 1 | -1/+1 | |
2013-12-19 | util/fifo_buffer: remove obsolete library | Max Kellermann | 3 | -383/+0 | |