ejurgensen
bfa9f4d5cf
Upgrade db schema to v16
2015-01-10 00:08:50 +01:00
ejurgensen
2208c021aa
Improve browse queries (credit @chme)
...
Adjusted re-commit of commit ec47c6e730
2015-01-09 23:59:38 +01:00
ejurgensen
27a2fabb56
Modify groups queries and improve index
2015-01-09 23:04:50 +01:00
ejurgensen
ea598bfeaf
Remove upgrade paths for indices (since they don't have any data anyway), and instead implement db_create_indices and db_drop_indices to reduce redundancy
2015-01-09 00:28:06 +01:00
chme
1981237638
Improve select for files table by removing f.media_kind = 32 from the
...
queries (forked_daapd has no media_kind = 32).
2015-01-08 22:44:09 +01:00
chme
46f770b52d
Improve selects for files table by removing the (f.album <> '' AND
...
f.album IS NOT NULL) from the where clause for album and artist. These
are unnecessary because forked-daapd makes sure that an artist or album
name exists.
2015-01-08 22:43:29 +01:00
ejurgensen
ad48ccb804
Revert "Merge branch 'db' of git://github.com/chme/forked-daapd into chme-db"
...
This reverts commit b8d5e32160
, reversing
changes made to 5a02f926e3
.
2015-01-08 22:40:47 +01:00
ejurgensen
b8d5e32160
Merge branch 'db' of git://github.com/chme/forked-daapd into chme-db
...
Conflicts:
src/artwork.c
2015-01-08 22:34:45 +01:00
ejurgensen
5a02f926e3
Fix bug in float to string conversion of raop volume (credit @andreas-p, issue #84 )
2015-01-08 22:03:53 +01:00
ejurgensen
70f05049e8
Change text for severity log from ERROR to LOG
...
To avoid this startup message:
[ERROR] main: Forked Media Server Version 22.1 taking off
2015-01-07 21:50:24 +01:00
ejurgensen
3b38bee45b
Fix wrong log domain
2015-01-06 23:26:29 +01:00
ejurgensen
a9bc1a21dc
Merge pull request #75 from couteau/ownartwork (and additional artwork.c overhaul)
2015-01-04 22:41:00 +01:00
ejurgensen
103ce0887a
Misc artwork fixup
2015-01-04 19:38:13 +01:00
ejurgensen
73bbe831e6
artwork.c overhaul and avoid "Error reading artwork" message when there is no artwork
...
- try to align return values in artwork.c
2015-01-04 15:12:46 +01:00
chme
6a2dc2d538
log severity in logfile and console
2015-01-03 18:00:31 +01:00
ejurgensen
0d7ec13ede
Merge branch 'ownartwork' of @couteau and various modifications (see pr #75 )
2015-01-03 00:31:48 +01:00
ejurgensen
2879458e98
Fix for issue #62 (slow internet streams), credit @chme
2015-01-02 23:24:44 +01:00
ejurgensen
d55d194201
Remove misplaced quotes
2015-01-01 22:28:26 +01:00
Stuart C. Naifeh
f3e21956c4
Add configuration option to disable individual artwork
2014-12-30 10:38:03 -05:00
chme
ec47c6e730
optimize queries and indexes for composer/genre
2014-12-29 09:24:29 +01:00
chme
5cb06980e3
Optimize the indexes on the files table to speed up select queries
2014-12-29 09:24:29 +01:00
chme
12b46ad94d
Improve select for files table by removing f.media_kind = 32 from the
...
queries (forked_daapd has no media_kind = 32).
2014-12-29 09:24:29 +01:00
chme
fedf571d34
Improve selects for files table by removing the (f.album <> '' AND
...
f.album IS NOT NULL) from the where clause for album and artist. These
are unnecessary because forked-daapd makes sure that an artist or album
name exists.
2014-12-29 09:24:28 +01:00
chme
e321e5137f
db update v16 and cache update v2
2014-12-29 09:24:28 +01:00
chme
31870fe046
improve selects for files table by removing the join to the groups table
2014-12-29 09:24:28 +01:00
ejurgensen
a69619a5a7
Implement is_remote() and change how transcode_needed() is used
...
transcode_needed() was getting called needlessly in http_daapd.c,
because 1) once it is determined that a given codec needs transcoding
for a given client there is no reason to call and check again, 2)
transcoding is irrelevant for remotes. Also some cleaning up of
user_agent_filter().
2014-12-28 23:37:12 +01:00
ejurgensen
3e412b5e65
Remove misplaced quotes in db_group_type_bypersistentid()
2014-12-28 23:32:21 +01:00
ejurgensen
4de5f7c19c
Fix login/logout problem in spotify.c (see issue #68 )
2014-12-28 21:08:52 +01:00
chme
7889d92a81
Identify "android" user-agent as a remote client in transcode_needed()
...
(similar to the check in user_agent_filter())
2014-12-28 09:37:19 +01:00
chme
3208315503
fix delete query for removing files if a spotify playlist is deleted
2014-12-27 21:44:25 +01:00
Stuart C. Naifeh
431ecdb197
Cache individual artwork
2014-12-27 11:40:52 -05:00
Stuart C. Naifeh
9e9ffe6809
Update cache api, version, and logic to support caching of individual as
...
well as group artwork
2014-12-27 10:48:12 -05:00
Stuart C. Naifeh
2171a1f2b3
Re-add support for individual artwork
2014-12-27 09:44:16 -05:00
Justin Maggard
cdb0048082
Fix invalid read on empty string queries.
2014-12-17 15:03:23 -08:00
Justin Maggard
4efca3660f
Fix bad free when encountering an error fetching query results.
2014-12-17 15:03:23 -08:00
Justin Maggard
e431b04310
Lower log level for missing revision-number in client update request. This is some clients' normal behavior, so we shouldn't need to need to see a message about it in the error log.
2014-12-17 15:03:23 -08:00
ejurgensen
9b7a22ab0a
Avoid threading issue in both ffmpeg and libav that prevents decoding embedded png's
2014-12-09 22:31:41 +01:00
chme
2e5d234ac5
[artwork] do not add cache entry if reading artwork failed
2014-12-07 07:39:27 +01:00
ejurgensen
6f2f44168d
Some config file polish (now that it's being updated anyway)
2014-11-17 22:53:52 +01:00
ejurgensen
9d9c82b6b1
Shorten timeout waiting for audio to Spotify
2014-11-11 20:22:39 +01:00
ejurgensen
5e4f449179
Add a timeout waiting for audio to Spotify
2014-11-11 11:59:40 +01:00
ejurgensen
f74774f5f7
Be more generous with Spotify image resolution now that the cache protects against poor reponse times
2014-11-11 11:37:03 +01:00
chme
7578bb1205
Artwork caching (pull request #61 ), and also:
...
- introduced new section in config file for sqlite pragma settings,
added config for artwork cache
- added setting of pragma synchronous, cache size and journal mode to
daap cache
2014-11-10 22:53:08 +01:00
ejurgensen
f24ab29098
Extend cache rebuild to 60 seconds so we are more certain that the library is 'idle'
2014-10-16 22:15:35 +02:00
ejurgensen
9508eba62e
Return silence if the pipe read was blocked (credit bfitz)
2014-10-07 19:55:28 +02:00
ejurgensen
88fcfa061d
Add compability with ffmpeg's libswresample
2014-10-02 22:48:50 +02:00
ejurgensen
4857f21644
Merge branch 'freebsd': New timing mechanism (issue #46 )
...
- also some libevent 2 adjustments
2014-09-30 21:39:02 +02:00
ejurgensen
376f0ed1c0
Minor fix
2014-09-30 18:55:32 +02:00
ejurgensen
495aebec40
Fix bug where it would hang because it looked for artwork in named pipes
...
- also some refactoring of the artwork code to diminish redundancy
2014-09-29 23:40:38 +02:00
ejurgensen
513e38dcda
Proper update to libevent 2 (artwork, avio_evbuffer, dmap_common, transcode)
2014-09-28 22:44:45 +02:00
ejurgensen
661a557500
Proper update to libevent 2 in spotify.h and pipe.h
2014-09-28 22:26:23 +02:00
ejurgensen
a3a689573f
Better define in player.c
2014-09-28 22:14:30 +02:00
ejurgensen
1ffbfd8c45
Proper update to libevent 2 in player.c
2014-09-28 22:09:22 +02:00
ejurgensen
965df4fdfc
Delete event after disarming timer (maybe not necessary, but for safety)
2014-09-28 15:30:52 +02:00
ejurgensen
cf5b702460
Fix malplaced declaration
2014-09-27 23:12:18 +02:00
ejurgensen
4078542eb4
Forgot an include
2014-09-27 23:08:43 +02:00
ejurgensen
29265d6170
Drop special FreeBSD stream period
2014-09-27 23:08:24 +02:00
ejurgensen
861635eb4d
timer_delete() instead of close() for FreeBSD timer
2014-09-27 23:05:22 +02:00
ejurgensen
65110a9f39
Fix FreeBSD sound timing problems
2014-09-27 22:59:19 +02:00
ejurgensen
dafa26a48a
Protect against uinitialized var if query is empty
2014-09-26 23:13:17 +02:00
ejurgensen
ca3fada215
Fix ALSA audio problem where threshold will not be reset because
...
commit 7462290
decreased the value of pcm_pos
2014-09-19 22:18:07 +02:00
ejurgensen
27e7148405
Use STOB() in player.c since it is defined right in player.h
2014-09-19 22:14:31 +02:00
ejurgensen
f543b768ac
Merge pull request #41 from chme/skipprev
...
rfc: Change behavior of skip to previous song
2014-09-12 21:45:15 +02:00
ejurgensen
2fc681a971
Add condition for FreeBSD, ignore SCHED_BATCH in filescanner.c
2014-09-12 17:52:08 +02:00
ejurgensen
8c9793d9ef
Fix filescanner bugs:
...
- stop init-rescan/full-rescan from running twice
- set thread priority to batch
- don't request libevent to loop when the loop is already running
2014-09-11 22:41:07 +02:00
ejurgensen
5bfe4673f5
Add a function in filescanner.c to enumerate certain file types
...
Fixes bug where init-rescan and full-rescan would run twice because
two inotify events get triggered by eg 'touch xxx.init-rescan'
2014-09-10 22:16:52 +02:00
ejurgensen
97910f3a99
Fix bug where LastFM session key in db was ignored
2014-09-08 23:13:12 +02:00
ejurgensen
be7a6c7b1e
Don't try to login to Spotify if the filescanner got an exit signal
2014-09-08 22:45:05 +02:00
ejurgensen
94c5352db6
Remove EVLOOP_ONCE calls in filescanner
...
These calls generate error messages when the loop is already running, which
will be the case when using init-rescan or full-rescan. The only purpose
of these calls seems to be to check for exit signals from the main thread
during a startup bulk scan, where the loop is not running yet. However, we
can check for an exit signal by just setting/checking scan_exit.
This commit also removes the unused filescanner_status().
2014-09-08 21:57:52 +02:00
ejurgensen
d2d85b29f4
Lower the priority of the thread so forked-daapd may still respond
...
during file scan on low power devices
2014-09-07 13:48:03 +02:00
ejurgensen
2545aedc2a
Avoid duplicate rows in the admin table
2014-08-27 22:12:42 +02:00
ejurgensen
ae3b5077ec
Add support for .pls playlists
2014-08-27 21:57:16 +02:00
ejurgensen
1b51fcf07c
Rename filescanner_m3u to _playlist, because we are going to add
...
support for pls
2014-08-27 21:54:28 +02:00
ejurgensen
b26e507baa
Fix memleak in DAAP cache
2014-08-25 22:05:44 +02:00
ejurgensen
271e2c29e1
Add some libevent 1 compability
2014-08-24 14:51:41 +02:00
ejurgensen
d157aca620
Save response times in DB and show in log (for debugging)
2014-08-24 12:43:32 +02:00
ejurgensen
31ef4d4e13
Add slow DAAP queries to cache automatically
2014-08-24 01:23:23 +02:00
ejurgensen
cf091e8d8b
Adjust daapcache so it serves User-Agent to httpd_daap's reply handlers
2014-08-23 00:02:01 +02:00
ejurgensen
624dd40c59
Include DAAP queries from Retune and TunesRemote+ for caching
...
+ misc fixing up
2014-08-22 22:51:13 +02:00
ejurgensen
f997aca452
More DAAP cache adjustments
2014-08-21 23:06:52 +02:00
ejurgensen
eac718ea0f
Some more daap cache triggers
2014-08-21 10:14:24 +02:00
ejurgensen
76231cac0f
Experimental caching of playlist 1
2014-08-21 10:01:47 +02:00
ejurgensen
7623de1ac4
Allow const char tags and handle null requests in dmap_common
2014-08-21 09:59:59 +02:00
ejurgensen
39b9c4fc33
Make DAAP cache use and location configurable
2014-08-20 23:09:23 +02:00
ejurgensen
f3a19fce8e
Add DAAP cache backend
2014-08-20 00:21:48 +02:00
ejurgensen
a594455e09
Add db_query_run() to get rid of some redundancy in db.c
2014-08-18 00:20:23 +02:00
ejurgensen
6d8e4c67aa
Support for LastFM scrobbling (issue #19 )
2014-08-15 23:36:54 +02:00
ejurgensen
21cf3ab7d3
Add trimwhitespace(), keyval sorting and alloc to misc functions
...
- features required by the LastFM module
2014-08-15 22:56:39 +02:00
ejurgensen
d5efc2dcb3
Add db interface to update the admin table
2014-08-15 22:54:47 +02:00
ejurgensen
b0807b168e
Preproc defines in evhttp_compat.h to protect against double inclusion
2014-08-15 22:53:47 +02:00
Marlies Heijkoop
bbb21b0bad
Don't segfault on invalid utf8 while sorting
...
`strmblen` returns -1 on invalid sequences, which causes a segfault when passed as length to `stpncpy`.
2014-08-14 20:06:45 +02:00
chme
05e6402dc6
Fix skip to next song while the last song in Up Next is playing
...
(introduced in a6c2a25
)
2014-08-02 07:25:18 +02:00
chme
974c6e6323
add missing "#undef Q_TMPL"
2014-07-27 11:16:00 +02:00
chme
a6c2a25642
If reshuffling with repeat all songs in queue active, set shuffle-head
...
to current playing song. Previously the shuffle-head was set to the next
song after the current, therefor the UpNext-queue appeared empty after
adding new songs to the queue.
2014-07-25 18:51:34 +02:00
chme
87b415b0d4
Fix segfault on reshuffling one item
2014-07-25 18:25:20 +02:00
chme
5065c3e4a0
Use query parameter if queuefilter parameter is unkown
2014-07-19 08:45:40 +02:00
chme
49a985391d
Ignore queuefilter on playqueue-edit-add if mode = 0 (add to up next)
2014-07-19 08:44:27 +02:00
chme
74622904e3
local audio: do not add pcm_buf_threshold to pcm_pos (leads to wrong
...
position in Remote)
2014-07-17 20:14:21 +02:00
chme
4d79a85780
Change behavior of skip to previous song to start the current song from
...
the beginning, if it is playing for more than 3 seconds
2014-07-17 20:14:21 +02:00
chme
fe2abfd123
clear queue on playback abort
2014-07-17 20:12:19 +02:00