Commit Graph

3214 Commits

Author SHA1 Message Date
chme
540915dbf9 [mpd] add mpd section in forked-daapd.conf 2015-07-19 19:47:56 +02:00
chme
c6851eac9b [mpd] use the same image size as in raop_metadata_prepare (max 600x600)
to increase artwork cache hits
2015-07-18 07:34:48 +02:00
chme
1ab318d725 [mpd] support serving artwork over http 2015-07-18 07:17:21 +02:00
ejurgensen
d870b97142 Remove LastFM thread now that it can run from the worker thread 2015-06-27 23:24:07 +02:00
ejurgensen
0b87c04f57 Update README.md: Include MPD 2015-06-22 21:57:41 +02:00
ejurgensen
b6703ab7cd Don't retrieve ICY StreamUrls without jpg/png extension (don't want to risk initiating a major, useless download) 2015-06-20 23:11:18 +02:00
ejurgensen
227017ef5b Bump version to 23.2 2015-06-18 23:19:06 +02:00
ejurgensen
ec0ba2c5fa Fix problem where the http client would ignore the last line in a m3u because of missing CRLF (issue #169) 2015-06-18 23:03:11 +02:00
ejurgensen
f73d944456 Merge pull request #170 from chme/mpdplaylistinfo
[mpd] some fixes to playlistinfo and lsinfo
2015-06-14 07:28:20 +02:00
chme
ceca9135c5 [mpd] add special handling to command "lsinfo" if the root directory was
passed as argument.

Clients like ympd and ncmpcpp are relying on this (deprecated) behavior
2015-06-14 07:11:17 +02:00
chme
b9b3671d58 [mpd] add support for command "decoders" 2015-06-14 07:11:17 +02:00
chme
426e827712 [mpd] Return whole queue for command "playlistinfo" if given argument is
-1 (not a valid position in the queue)
2015-06-13 14:38:56 +02:00
ejurgensen
879c2ef350 Avoid cache regeneration triggering during db_query_run (in case the query is long running, like db_files_update_songalbumid might be) 2015-06-08 23:07:56 +02:00
ejurgensen
335517a2e8 Prevent this database deadlock:
1. bulk scan begins transaction, locking the db
2. cache regeneration is triggered, but waits for db to unlock
3. bulk scan calls cache_artwork_ping, which can't return because cache thread is waiting
-> scan thread is waiting for cache thread, which is waiting for scan thread
2015-06-08 22:24:33 +02:00
ejurgensen
4fffc057b6 Change queue_remove() to fix segfault because source_head/shuffle_head could become invalid, and to protect against invalid input in general (ref issue #160).
Also try to failsafe source_position() and implement next_ps() all around.
2015-06-08 00:21:49 +02:00
ejurgensen
3dde23e060 Include terminating null in u8_normalize - not necessary now, but just to be safe 2015-06-06 14:47:54 +02:00
ejurgensen
6224fdb025 UTF-8 conversion was returning string without null termination (thank you @stephan-01010011, ref pr #168) 2015-06-06 14:22:24 +02:00
ejurgensen
a9437acc1a Rework pr #162 to avoid mem leaks and string termination problems 2015-06-05 23:55:57 +02:00
ejurgensen
7d231b992b Fix typo 2015-06-04 22:17:49 +02:00
ejurgensen
cd14522915 Swap misplaced args in db.c 2015-06-04 22:10:30 +02:00
ejurgensen
ac34ffabec Merge branch 'chme-mpd' 2015-06-04 21:59:06 +02:00
ejurgensen
271c5ff344 Change DB upgrade from v18->v19 to v18->v18.01 2015-06-04 21:58:01 +02:00
chme
7cd96690c0 Remove file extension for playlists from virtual_path during scan and
update db to v19 removing the file extensions from the stored playlists

An existing file extension in the virtual path leads to wrong entries in
MPDroid (and mpd does also not return the file extension).
2015-06-04 08:11:46 +02:00
ejurgensen
3655e26703 Code style 2015-06-02 23:10:04 +02:00
ejurgensen
64ef66f030 Merge pull request #162 from stephan-01010011/master
Fixed bug that caused icy header metadata to be not correctly encoded
2015-06-03 00:05:56 +03:00
ejurgensen
7a0dfef136 Add sub-sorting when sort=artists, because otherwise Tunesremote SE will not play the artist's tracks in proper order 2015-06-01 23:36:16 +02:00
stephan-01010011
32727bd296 Fixed bug that caused icy header metadata to be not correctly
encoded/converted. Characters above x7F were replaced by '?' character
although the rfc defines a ISO−8859−1 encoding for descriptive
field-content.

According to rfc2616 the field-content is defined as follows:
<the OCTETs making up the field-value and consisting of either *TEXT or
combinations of token, separators, and quoted-string>
The TEXT rule is only used for descriptive field contents and values
that are not intended to be interpreted by the message parser. Words of
*TEXT MAY contain characters from character sets other than ISO- 8859-1
only when encoded according to the rules of RFC 2047.

In the previous implementation the icy metadata was converted based on
fromcode "ascii".

Following incoming icy header field-values should be encoded as
"ISO−8859−1" before adding them to the metadata structure.

- misc.c unicode_fixup_string enhanced by an additional parameter to
define the fromcode
- misc.h unicode_fixup_string prototype updated
- filescanner.c function fixup_tags updated to stay compatible to the
previous implementation using fromcode "ascii"
- db.c function unicode_fixup_mfi updated to stay compatible to the
previous implementation using fromcode "ascii"
- http.c function metadata_header_get enhanced to encode the header
field-content as "ISO−8859−1" to comply with rfc2616
2015-05-31 14:05:31 +01:00
ejurgensen
70fea7e459 Merge pull request #161 from chme/mpdplchanges
Support for mpd command plchanges
2015-05-30 20:33:46 +03:00
chme
7f09438621 [mpd] support "date" argument in find and search commands 2015-05-30 05:56:53 +02:00
chme
2a04740ca2 [mpd] support "file" argument in list command 2015-05-30 05:56:52 +02:00
chme
4299de5ac7 [mpd] implement plchanges to report all songs in the queue as changed
(ignores the playlist version parameter).

This is necessary in order to get mpd clients (e. g. sonata) relying on
this command to display the queue.
2015-05-30 05:33:32 +02:00
ejurgensen
4a50a7a326 [spotify] Improve Spotify loading efficiency and set time_added so smart playlists will work 2015-05-29 19:47:53 +02:00
ejurgensen
40d7d044be Lower log severity of message in spotify.c 2015-05-27 20:32:27 +02:00
ejurgensen
a1e417c571 Rename count_info to fix issue #157 2015-05-26 21:24:10 +02:00
ejurgensen
8dd1e0fde2 Fix problem introduced with commit 475d5db where genres and composers don't get sorted 2015-05-26 21:10:28 +02:00
ejurgensen
79cdfebf34 Merge pull request #150 from chme/mpdidle
Add support for mpd idle command
2015-05-21 22:31:03 +02:00
ejurgensen
d6828b90fc Merge pull request #149 from chme/mpdcommands
Add support for additional mpd commands
2015-05-21 22:30:49 +02:00
ejurgensen
75ded12d7f Bump version to 23.1 2015-05-21 22:26:33 +02:00
chme
8c12929b91 Added source code comments, return error value if adding/removing a
listener failed
2015-05-21 07:57:18 +02:00
chme
0b73233197 [mpd] remove libevent1 support 2015-05-21 07:15:05 +02:00
ejurgensen
349372c7b9 Merge pull request #155 from chme/smartpl-grouping
[smartpl] add "grouping" field to smart playlist grammar
2015-05-21 07:14:45 +02:00
chme
1cde19b5b6 [smartpl] add "grouping" field to smart playlist grammar 2015-05-21 06:22:55 +02:00
ejurgensen
6176f7f4a2 Fix bug where files being copied into library with eg. Samba will get scanned
before writing has finished, which may result in no metadata for the file
2015-05-20 22:38:26 +02:00
ejurgensen
727a5b23f3 Some Remote troubleshooting info for the README 2015-05-19 22:02:45 +02:00
chme
41a08d1931 [mpd] rework listener events to use a bit map 2015-05-18 20:12:18 +02:00
chme
baffe49887 refactor use for loop to remove item from linked list 2015-05-13 11:37:09 +02:00
ejurgensen
e4354cb173 README update 2 2015-05-10 14:55:59 +02:00
ejurgensen
f833bb93b4 README update 2015-05-10 14:54:22 +02:00
chme
3886ec6638 Add version number for playlist (queue)
This is necessary to return a valid playlist id for mpd status command.
2015-05-09 07:46:33 +02:00
chme
aa4a12cabe add events for playlist (queue), volume, speaker, options
(random/shuffle) changes
2015-05-09 07:46:33 +02:00