Max Kellermann
216e37bf33
Makefile.am: link test/DumpDatabase with Ack.cxx
2013-10-30 16:14:44 +01:00
Max Kellermann
7bb3987acc
db/proxy: return server errors using "enum ack"
2013-10-30 16:04:21 +01:00
Max Kellermann
6a147a17af
db/proxy: pass search/find to remote MPD
2013-10-30 10:00:57 +01:00
Max Kellermann
2b7529e905
db/proxy: pass SongFilter to the remote MPD in VisitUniqueTags()
2013-10-30 09:40:23 +01:00
Max Kellermann
1ed321f964
db/proxy: add missing nullptr check
2013-10-30 09:37:20 +01:00
Max Kellermann
2aee1b86f3
SongFilter: add special keyword "base"
...
Restores the features from the previous draft commands "findin" /
"searchin".
2013-10-29 21:13:40 +01:00
Max Kellermann
b5fc21b9f4
Revert "command: new commands "findin", "searchin" with base URI"
...
This reverts commit a577944ab5
.
Will be replaced by new options for the old commands "search" and
"find".
2013-10-29 21:13:40 +01:00
Max Kellermann
44581dbef5
util/UriUtil: add uri_is_child_or_same()
2013-10-29 21:13:40 +01:00
Jean-Francois Dockes
205448c1e8
db/proxy: enable song matching
2013-10-29 20:58:35 +01:00
Jean-Francois Dockes
2d11c6ab29
SongFilter: make SongFilter::Item class definition public
2013-10-29 20:47:52 +01:00
Max Kellermann
6859c22b69
SongFilter: "any" does not match file name
...
According to the protocol documentation, matching the file name was
wrong. This removes some awkward special-case code.
2013-10-29 20:40:55 +01:00
Max Kellermann
2d5413fc3b
DatabaseSelection: use std::string
2013-10-29 20:36:52 +01:00
Max Kellermann
a6aa0e4cbf
SongFilter: use std::string
2013-10-29 19:39:17 +01:00
Max Kellermann
163848ab3b
fd_util: avoid unnecessary fcntl() calls
2013-10-29 13:02:53 +01:00
Max Kellermann
03747ba93e
PlayerControl: move attributes to struct CrossFadeSettings
2013-10-29 00:14:27 +01:00
Max Kellermann
095c390df7
FilterRegistry: add "pure" attribute
2013-10-29 00:05:04 +01:00
Max Kellermann
20597b3632
*: use nullptr instead of NULL
2013-10-28 23:58:17 +01:00
Max Kellermann
4728735acf
decoder/dsf: don't play junk at the end of the "data" chunk
2013-10-28 23:47:25 +01:00
Max Kellermann
9dcbd005f0
decoder/dsf: add range check
2013-10-28 23:41:51 +01:00
Max Kellermann
0ad2eb34c7
decoder/dsdlib: add class DsdUint64
...
Merge lots of duplicate code.
2013-10-28 23:29:23 +01:00
Max Kellermann
0e8a15e813
decoder/dsdlib: include cleanup
2013-10-28 23:26:37 +01:00
Max Kellermann
5b0d6a59cf
decoder/dsdlib: move API documentation to header
2013-10-28 23:26:16 +01:00
Max Kellermann
fd3dc7e5fb
decoder/dsdlib: convert struct dsdlib_id to a class
2013-10-28 23:12:48 +01:00
Max Kellermann
c37edfd3e9
configure.ac: disable the OS X output plugin by default
...
There hasn't been a maintainer for this plugin for years. It may even
fail to build.
2013-10-28 22:25:58 +01:00
Max Kellermann
4a99b1df4b
configure.ac: add variable host_is_darwin
...
Fixes the OpenAL detection which was broken because enable_osx was
uesd which was set later.
2013-10-28 22:18:56 +01:00
Max Kellermann
12e9b7eafa
PcmFormat: move definitions to struct SampleTraits
2013-10-28 21:29:36 +01:00
Max Kellermann
de1261ba28
MusicChunk: return WritableBuffer
2013-10-28 17:10:12 +01:00
Max Kellermann
5ee5a89a7f
MusicChunk: use uint8_t instead of char
2013-10-28 17:08:14 +01:00
Max Kellermann
1ad2475f9e
DecoderControl: convert mutex and client_cond to a reference
...
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.
2013-10-28 10:22:05 +01:00
Max Kellermann
5b5675cc12
player_control: rename to PlayerControl
2013-10-28 10:12:33 +01:00
Max Kellermann
e699f6781e
decoder_control: rename to DecoderControl
2013-10-28 10:09:21 +01:00
Oddegamra
5f13c1cd9c
output/httpd: accept icy-metadata with and without space
...
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.
2013-10-26 16:32:00 +02:00
Max Kellermann
a577944ab5
command: new commands "findin", "searchin" with base URI
2013-10-26 16:13:35 +02:00
Max Kellermann
17ec3b0c2d
FileCommands: "readcomments" understands APE and ID3v2 tags
...
Implements Mantis ticket 3843.
2013-10-26 16:04:29 +02:00
Max Kellermann
fb75137540
FileCommands: fix wrong control character check in IsValidValue()
...
Check was the wrong way around, and made all valid values invisible.
2013-10-26 16:04:06 +02:00
Max Kellermann
6f87164ad6
ApeTag: support multiple values per name
2013-10-26 16:00:05 +02:00
Max Kellermann
a4d82cfe1e
ApeTag: move code to ForEachValue()
2013-10-26 15:57:09 +02:00
Max Kellermann
9f21eee2ec
ApeTag: simplify the "recognized" flag
2013-10-26 15:52:49 +02:00
Max Kellermann
a40246d312
TagFile: use Path instead of const char *
2013-10-26 15:38:29 +02:00
Max Kellermann
4a5aad0948
PlayerControl: initialize tagged_song in constructor
2013-10-26 15:37:49 +02:00
Max Kellermann
85ae7e9c9a
DecoderControl: move code/attributes to new class MixRampInfo
2013-10-26 14:19:34 +02:00
Max Kellermann
2098b94b47
DecoderThread: move code to DecoderControl::CycleMixRamp()
2013-10-26 14:12:10 +02:00
Max Kellermann
59ad6265a1
DecoderControl: add MixRamp getters
2013-10-26 14:08:09 +02:00
Max Kellermann
067572c6dd
CrossFade: reimplement mixramp_interpolate() without strtok()
...
Don't require a writable string, and don't modify it.
2013-10-26 13:53:32 +02:00
Max Kellermann
7f03f68fcc
CrossFade: apply coding style
2013-10-26 13:53:08 +02:00
Max Kellermann
de862f9f1b
test/test_mixramp: unit test for mixramp_interpolate()
2013-10-26 13:49:15 +02:00
Max Kellermann
b5e31c89c0
CrossFade: merge "return" statements using "break"
2013-10-26 13:49:15 +02:00
Max Kellermann
e898400fbd
CrossFade: use nullptr instead of NULL
2013-10-26 13:49:15 +02:00
Max Kellermann
3ac7de7a22
util/NumberParser: add ParseFloat()
2013-10-26 13:49:15 +02:00
Max Kellermann
ade66e7ece
util/NumberParser: indent
2013-10-26 13:49:15 +02:00