Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | ApeTag: support multiple values per name | Max Kellermann | 2013-10-26 | 1 | -2/+7 | |
| | ||||||
* | ApeTag: move code to ForEachValue() | Max Kellermann | 2013-10-26 | 1 | -16/+30 | |
| | ||||||
* | ApeTag: simplify the "recognized" flag | Max Kellermann | 2013-10-26 | 1 | -4/+1 | |
| | ||||||
* | TagFile: use Path instead of const char * | Max Kellermann | 2013-10-26 | 16 | -32/+52 | |
| | ||||||
* | PlayerControl: initialize tagged_song in constructor | Max Kellermann | 2013-10-26 | 1 | -0/+1 | |
| | ||||||
* | DecoderControl: move code/attributes to new class MixRampInfo | Max Kellermann | 2013-10-26 | 13 | -95/+124 | |
| | ||||||
* | DecoderThread: move code to DecoderControl::CycleMixRamp() | Max Kellermann | 2013-10-26 | 3 | -6/+12 | |
| | ||||||
* | DecoderControl: add MixRamp getters | Max Kellermann | 2013-10-26 | 2 | -2/+14 | |
| | ||||||
* | CrossFade: reimplement mixramp_interpolate() without strtok() | Max Kellermann | 2013-10-26 | 2 | -26/+19 | |
| | | | | Don't require a writable string, and don't modify it. | |||||
* | CrossFade: apply coding style | Max Kellermann | 2013-10-26 | 2 | -13/+15 | |
| | ||||||
* | test/test_mixramp: unit test for mixramp_interpolate() | Max Kellermann | 2013-10-26 | 3 | -0/+94 | |
| | ||||||
* | CrossFade: merge "return" statements using "break" | Max Kellermann | 2013-10-26 | 1 | -2/+4 | |
| | ||||||
* | CrossFade: use nullptr instead of NULL | Max Kellermann | 2013-10-26 | 1 | -7/+7 | |
| | ||||||
* | util/NumberParser: add ParseFloat() | Max Kellermann | 2013-10-26 | 1 | -0/+6 | |
| | ||||||
* | util/NumberParser: indent | Max Kellermann | 2013-10-26 | 1 | -10/+10 | |
| | ||||||
* | INSTALL: mention clang | Max Kellermann | 2013-10-26 | 1 | -0/+1 | |
| | ||||||
* | INSTALL: mention minimum gcc version | Max Kellermann | 2013-10-26 | 1 | -1/+1 | |
| | ||||||
* | command: new command "readcomments" lists arbitrary file tags | Max Kellermann | 2013-10-25 | 6 | -0/+182 | |
| | ||||||
* | ReplayGainInfo: refactor to a class | Max Kellermann | 2013-10-25 | 13 | -67/+64 | |
| | ||||||
* | ReplayGainInfo: use CamelCase for struct name | Max Kellermann | 2013-10-25 | 35 | -135/+125 | |
| | ||||||
* | ReplayGainConfig: add "pure" attributes | Max Kellermann | 2013-10-25 | 1 | -0/+3 | |
| | ||||||
* | output/httpd: support HEAD requests | Max Kellermann | 2013-10-25 | 3 | -5/+30 | |
| | ||||||
* | output/httpd: remove bogus assertion | Max Kellermann | 2013-10-25 | 1 | -1/+0 | |
| | ||||||
* | OtherCommands: re-add the "volume" command | Max Kellermann | 2013-10-25 | 5 | -0/+57 | |
| | | | | | | This command was removed by commit 206392ad (MPD 0.16), even though it was been proven useful for some very simple clients. On request, I add it to the protocol again. | |||||
* | MixerAll, Volume: add "pure" attributes | Max Kellermann | 2013-10-25 | 2 | -0/+8 | |
| | ||||||
* | decoder/opus: support replay gain | Max Kellermann | 2013-10-24 | 3 | -1/+24 | |
| | | | | Parse the R128_TRACK_GAIN comment string. | |||||
* | decoder/Opus: implement seeking | Max Kellermann | 2013-10-24 | 3 | -6/+49 | |
| | ||||||
* | decoder/opus: provide time stamps | Max Kellermann | 2013-10-24 | 1 | -0/+5 | |
| | | | | | Call decoder_timestamp(). This is not necessary currently, but will be as soon as we implement seeking. | |||||
* | decoder/opus: show song duration during playback | Max Kellermann | 2013-10-24 | 1 | -1/+57 | |
| | | | | | | This requires seeking to the end-of-stream, checking its granulepos, and then seeking back to the previous file position. We do this only for local files. | |||||
* | decoder/opus: call ogg_stream_reset() in OggSeekPageAtOffset() | Max Kellermann | 2013-10-24 | 1 | -0/+4 | |
| | ||||||
* | test/run_decoder: print the song duration | Max Kellermann | 2013-10-24 | 1 | -3/+4 | |
| | ||||||
* | decoder/opus: move code to OggSeekPageAtOffset() | Max Kellermann | 2013-10-24 | 1 | -4/+11 | |
| | ||||||
* | decoder/opus: move SeekFindEOS() to OggFind.cxx | Max Kellermann | 2013-10-24 | 3 | -19/+31 | |
| | ||||||
* | decoder/opus: make opus_sample_rate constexpr | Max Kellermann | 2013-10-24 | 1 | -1/+1 | |
| | ||||||
* | decoder/opus: use std::copy_n() instead of memcpy() | Max Kellermann | 2013-10-24 | 1 | -2/+3 | |
| | ||||||
* | decoder/opus: support all core tag names | Max Kellermann | 2013-10-24 | 1 | -0/+5 | |
| | ||||||
* | decoder/opus: move code to ParseOpusTagName() | Max Kellermann | 2013-10-24 | 1 | -1/+8 | |
| | ||||||
* | decoder/opus: use delete[] for the OpusReader::ReadString() result | Max Kellermann | 2013-10-24 | 1 | -1/+1 | |
| | ||||||
* | DecoderAPI: add "pure" attributes | Max Kellermann | 2013-10-24 | 1 | -0/+2 | |
| | ||||||
* | decoder/wavpack: move variable declarations | Max Kellermann | 2013-10-23 | 1 | -53/+34 | |
| | ||||||
* | input_stream: rename struct to InputStream | Max Kellermann | 2013-10-23 | 77 | -522/+530 | |
| | ||||||
* | InputInternal: remove obsolete library | Max Kellermann | 2013-10-23 | 13 | -84/+0 | |
| | ||||||
* | UriUtil: uri_remove_auth() returns std::string | Max Kellermann | 2013-10-23 | 6 | -38/+25 | |
| | ||||||
* | test/test_util: unit test for libutil.a | Max Kellermann | 2013-10-23 | 2 | -0/+64 | |
| | ||||||
* | InputStream: add method Rewind() | Max Kellermann | 2013-10-23 | 9 | -28/+31 | |
| | ||||||
* | DecoderThread: remove unused function deconst_plugin() | Max Kellermann | 2013-10-23 | 1 | -9/+0 | |
| | ||||||
* | Playlist: refresh new tags after database update | Max Kellermann | 2013-10-22 | 7 | -23/+86 | |
| | | | | Fixes regression from commit e96779d. | |||||
* | decoder/flac: fix tag name comparison | Max Kellermann | 2013-10-22 | 1 | -1/+1 | |
| | ||||||
* | Playlist*, Queue: use GetDatabase() overload without Error | Max Kellermann | 2013-10-22 | 4 | -4/+4 | |
| | | | | | Don't use IgnoreError() when there's an overload that does not try to give us one. | |||||
* | Queue: add method ModifyAtPosition() | Max Kellermann | 2013-10-22 | 2 | -1/+12 | |
| |