Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | *: update copyright year to 2013 | Max Kellermann | 2013-10-30 | 116 | -116/+116 | |
| | ||||||
* | ClientList: disconnect all clients in destructor | Max Kellermann | 2013-10-30 | 1 | -0/+3 | |
| | | | | Fixes assertion failure. | |||||
* | mixer/software: fix double free bug | Max Kellermann | 2013-10-30 | 1 | -3/+15 | |
| | ||||||
* | PlaylistState: ignore "mixrampdelay:nan" | Max Kellermann | 2013-10-30 | 1 | -1/+7 | |
| | | | | mixramp_delay==nan() causes severe problems with cross-fading. | |||||
* | increase default buffer size to 4 MB | Max Kellermann | 2013-10-30 | 1 | -1/+1 | |
| | | | | | | 2 MB was too small for cross-fading a 24 bit file. Increasing to 4 MB is still not too large for weak machines, but is enough for cross-fading. | |||||
* | db/proxy: remove obsolete #undefs | Max Kellermann | 2013-10-30 | 1 | -2/+0 | |
| | ||||||
* | db/proxy: auto-reconnect | Max Kellermann | 2013-10-30 | 1 | -14/+64 | |
| | ||||||
* | ReplayGainInfo: use large negative value instead of infinity | Max Kellermann | 2013-10-30 | 2 | -4/+4 | |
| | | | | The last piece to allow -ffast-math. | |||||
* | PlayerCommands: show CrossFade/MixRamp only if enabled | Max Kellermann | 2013-10-30 | 1 | -4/+10 | |
| | ||||||
* | PcmMix: use negative value instead of NaN for addition | Max Kellermann | 2013-10-30 | 3 | -7/+6 | |
| | | | | Avoid NaN to allow -ffast-math. | |||||
* | CrossFade: eliminate NaN from mixramp_interpolate() | Max Kellermann | 2013-10-30 | 1 | -4/+4 | |
| | | | | Use a boolean flag instead. | |||||
* | CrossFade: use negative value for invalid MixRamp overlap | Max Kellermann | 2013-10-30 | 1 | -5/+12 | |
| | | | | Avoid NaN to allow -ffast-math. | |||||
* | CrossFade: use negative value for invalid mixramp_delay | Max Kellermann | 2013-10-30 | 3 | -6/+5 | |
| | | | | Avoid NaN to allow -ffast-math. | |||||
* | CrossFade: remove obsolete API documentation | Max Kellermann | 2013-10-30 | 1 | -3/+0 | |
| | ||||||
* | Main: check the g_get_user_special_dir() result | Max Kellermann | 2013-10-30 | 1 | -4/+7 | |
| | | | | Fixes crash. | |||||
* | db/proxy: return server errors using "enum ack" | Max Kellermann | 2013-10-30 | 1 | -2/+13 | |
| | ||||||
* | db/proxy: pass search/find to remote MPD | Max Kellermann | 2013-10-30 | 2 | -1/+54 | |
| | ||||||
* | db/proxy: pass SongFilter to the remote MPD in VisitUniqueTags() | Max Kellermann | 2013-10-30 | 1 | -2/+72 | |
| | ||||||
* | db/proxy: add missing nullptr check | Max Kellermann | 2013-10-30 | 1 | -1/+2 | |
| | ||||||
* | SongFilter: add special keyword "base" | Max Kellermann | 2013-10-29 | 4 | -3/+50 | |
| | | | | | Restores the features from the previous draft commands "findin" / "searchin". | |||||
* | Revert "command: new commands "findin", "searchin" with base URI" | Max Kellermann | 2013-10-29 | 3 | -25/+4 | |
| | | | | | | | This reverts commit a577944ab5a1f4d688e5901fa3efaf7cd1673588. Will be replaced by new options for the old commands "search" and "find". | |||||
* | util/UriUtil: add uri_is_child_or_same() | Max Kellermann | 2013-10-29 | 2 | -0/+31 | |
| | ||||||
* | db/proxy: enable song matching | Jean-Francois Dockes | 2013-10-29 | 1 | -9/+23 | |
| | ||||||
* | SongFilter: make SongFilter::Item class definition public | Jean-Francois Dockes | 2013-10-29 | 1 | -0/+10 | |
| | ||||||
* | SongFilter: "any" does not match file name | Max Kellermann | 2013-10-29 | 1 | -5/+2 | |
| | | | | | According to the protocol documentation, matching the file name was wrong. This removes some awkward special-case code. | |||||
* | DatabaseSelection: use std::string | Max Kellermann | 2013-10-29 | 3 | -8/+6 | |
| | ||||||
* | SongFilter: use std::string | Max Kellermann | 2013-10-29 | 2 | -21/+26 | |
| | ||||||
* | fd_util: avoid unnecessary fcntl() calls | Max Kellermann | 2013-10-29 | 1 | -6/+8 | |
| | ||||||
* | PlayerControl: move attributes to struct CrossFadeSettings | Max Kellermann | 2013-10-29 | 5 | -63/+73 | |
| | ||||||
* | FilterRegistry: add "pure" attribute | Max Kellermann | 2013-10-29 | 1 | -0/+3 | |
| | ||||||
* | *: use nullptr instead of NULL | Max Kellermann | 2013-10-28 | 47 | -249/+250 | |
| | ||||||
* | decoder/dsf: don't play junk at the end of the "data" chunk | Max Kellermann | 2013-10-28 | 1 | -1/+9 | |
| | ||||||
* | decoder/dsf: add range check | Max Kellermann | 2013-10-28 | 1 | -0/+3 | |
| | ||||||
* | decoder/dsdlib: add class DsdUint64 | Max Kellermann | 2013-10-28 | 3 | -25/+26 | |
| | | | | Merge lots of duplicate code. | |||||
* | decoder/dsdlib: include cleanup | Max Kellermann | 2013-10-28 | 1 | -1/+1 | |
| | ||||||
* | decoder/dsdlib: move API documentation to header | Max Kellermann | 2013-10-28 | 2 | -5/+4 | |
| | ||||||
* | decoder/dsdlib: convert struct dsdlib_id to a class | Max Kellermann | 2013-10-28 | 4 | -34/+35 | |
| | ||||||
* | PcmFormat: move definitions to struct SampleTraits | Max Kellermann | 2013-10-28 | 1 | -36/+81 | |
| | ||||||
* | MusicChunk: return WritableBuffer | Max Kellermann | 2013-10-28 | 3 | -16/+15 | |
| | ||||||
* | MusicChunk: use uint8_t instead of char | Max Kellermann | 2013-10-28 | 1 | -1/+1 | |
| | ||||||
* | DecoderControl: convert mutex and client_cond to a reference | Max Kellermann | 2013-10-28 | 3 | -24/+29 | |
| | | | | | | | | Share the Mutex between the DecoderThread and the PlayerThread. This simplifies synchronization between the two threads and fixes a freeze problem: while the PlayerThread waits for the DeocderThread, it cannot answer requests from the main thread, and the main thread will block until the DecoderThread finishes. | |||||
* | player_control: rename to PlayerControl | Max Kellermann | 2013-10-28 | 21 | -134/+134 | |
| | ||||||
* | decoder_control: rename to DecoderControl | Max Kellermann | 2013-10-28 | 8 | -47/+47 | |
| | ||||||
* | output/httpd: accept icy-metadata with and without space | Oddegamra | 2013-10-26 | 1 | -1/+2 | |
| | | | | | | | | | | | Some, or most, Win32 audio players will pass "icy-metadata:1" to streaming servers. MPD expects a space between ":" and "1" at this point, and thus does not send any stream metadata. This applies to foobar2k and Winamp, for example. According to forums.radiotoolbox.com/viewtopic.php?t=74 not having a space there is expected behavior, so maybe MPD could accept both forms to determine if metadata should be sent or not. | |||||
* | command: new commands "findin", "searchin" with base URI | Max Kellermann | 2013-10-26 | 3 | -4/+25 | |
| | ||||||
* | FileCommands: "readcomments" understands APE and ID3v2 tags | Max Kellermann | 2013-10-26 | 1 | -0/+5 | |
| | | | | Implements Mantis ticket 3843. | |||||
* | FileCommands: fix wrong control character check in IsValidValue() | Max Kellermann | 2013-10-26 | 1 | -1/+1 | |
| | | | | Check was the wrong way around, and made all valid values invisible. | |||||
* | 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 | |
| |