Commit Graph

77 Commits

Author SHA1 Message Date
ejurgensen 6221e24f1b Support for live ICY metadata for streams (incl. artwork) 2015-03-14 21:42:53 +01:00
chme f41e7014e4 [mpd] add support for commands 'listplaylists', 'listplaylist',
'listplaylistinfo', 'ping'; add support for additional tags
2015-03-10 22:15:33 +01:00
chme 795926605d db: add missing field "virtual_path" in struct db_playlist_info (fixes
segfault when loading playlists)
2015-02-23 20:49:53 +01:00
chme 3eab952867 fixup: rename db_mpd_build_query to db_mpd_start_query, removed unused
function from db.h
2015-02-15 13:59:35 +01:00
chme df5b0f779a Use view for filelist instead of separate table 2015-02-14 22:38:14 +01:00
chme 830054bd71 Initial support for mpd protocol 2015-02-14 08:50:18 +01:00
ejurgensen 266d05f5eb Revert "Don't add duplicates (same fname, artist, album and title), issue #85"
This reverts commit 70365422b4.
2015-01-16 22:32:23 +01:00
ejurgensen 70365422b4 Don't add duplicates (same fname, artist, album and title), issue #85 2015-01-14 22:07:24 +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 d5efc2dcb3 Add db interface to update the admin table 2014-08-15 22:54:47 +02:00
ejurgensen 1bd11d2895 Fix so permission changes in the library are handled (issue #8) 2014-06-09 23:42:02 +02:00
ejurgensen 915719f0f8 Fix Spotify exemption from purge during init-rescan 2014-05-14 20:44:07 +02:00
ejurgensen a5b2fbc0fe Wrap bulk scan in a db transaction (credit @chme) 2014-05-11 23:13:09 +02:00
ejurgensen 7ed6cc98c3 Add support for Spotify (squashed commit), and:
- Try to not return items which a client can't play
    - Remove inotify subscription to IN_MODIFY and IN_CREATE
    - Fix crash on unknown codec type in transcode.c
    - Probably added some new bugs...
2014-03-11 23:20:29 +01:00
ejurgensen 190f91114e Support songartistid (asri) in group requests and queuefilter=artist
- credit misenhower of wp8remote.com
2014-02-21 20:39:57 +01:00
ejurgensen eac404fa3a Add artwork field to db (upgrade to v15). Set field when embedded
artwork found by the filescanner. Reenable support for embedded
artwork in group requests.
2014-01-11 23:05:29 +01:00
ejurgensen ab86e30be4 Fix bug where sort fields were not implemented in group replies 2013-12-18 19:14:39 +01:00
ejurgensen dbb043198d Upgrade database to version 14 (artist groups and seek)
- add songartistid to support artist groups
- add corresponding trigger
- add seek field for later use (to save playback position)
- add G_ARTISTS and adjust queries
- add smart playlists Podcasts/Audiobooks with db upgrade
2013-12-17 20:58:55 +01:00
ejurgensen b3ea04a047 Some cleaning up in group handling in db.c in prep for artist groups 2013-12-15 21:47:49 +01:00
ejurgensen 8882374a75 Disable instead of purging when root library dir is not present 2013-11-30 23:12:09 +01:00
ejurgensen adc9c03763 Allow user to trigger full rescan with a .force-rescan file 2013-11-29 22:48:53 +01:00
ejurgensen 95fc525beb Add support for artist group request (experimental)
The purpose of this is mainly to support Hyperfine Remote for Android
2013-08-29 22:00:37 +02:00
ejurgensen 9d0962407a The m3u playlist scanner improvements in commit 6e9cf3a resulted in
too many database lookups. This is a more efficient version.
2013-08-21 23:16:25 +02:00
ejurgensen 6e9cf3a243 This makes the scanner more flexible when matching paths in playlists
with the library paths.
2013-08-20 21:58:35 +02:00
Julien BLACHE 1dfd27090e Speedup startup rescan 2011-09-10 12:56:30 +02:00
Peter Carmichael 3caae459be Add DB maintenance routines 2011-09-10 12:56:29 +02:00
Kai Elwert e226c38d4f Add db_query_fetch_string_sort() to fetch string+sortstring results 2011-03-21 18:48:00 +01:00
Kai Elwert 373c5584af Add sort tags to the database 2011-03-21 18:47:59 +01:00
Julien BLACHE 27c89cf312 Remove old db_config_* interface 2010-12-04 15:08:06 +01:00
Julien BLACHE 012e90b4a3 Add a dedicated table for speakers 2010-12-04 15:08:06 +01:00
Kai Elwert e5af78fe9f Implement sort=artist for DAAP queries 2010-10-09 16:06:00 +02:00
Julien BLACHE 058e2e9b2b Add config variables save/test/clear for 64bit integer as hex string 2010-08-04 19:17:21 +02:00
Julien BLACHE 35d6ac4cfa Add unicode_fixup_mfi() to check & reencode UTF-8 fields in struct media_file_info 2010-06-21 17:50:09 +02:00
Julien BLACHE dc95a04562 Add optional sorting clause to Q_ITEMS 2010-05-02 11:44:43 +02:00
Julien BLACHE 74cc5a7a13 Add config variables save/fetch for integer variables 2010-05-02 11:44:43 +02:00
Julien BLACHE 0411720a58 Perform explicit sqlite3 init/deinit 2010-04-26 18:24:09 +02:00
Julien BLACHE 19b6780a3c Remove provisions for multi-library support
It is now clear that multi-library support will not happen, so remove whatever
provisions were in the code for that.

It comes with a small change to the configuration file, too.

With this, DB schema version went to 9.
2010-03-19 19:09:18 +01:00
Julien BLACHE b0e10fb97d Add groups queries 2010-03-07 15:23:40 +01:00
Julien BLACHE 641e5462cc Rename pl_id member of struct query_params 2010-03-07 15:23:40 +01:00
Julien BLACHE 6a144cd670 Add db_file_path_byid() 2010-03-07 11:13:38 +01:00
Julien BLACHE 224ef48137 Make album groups persistent
Store groups (only album groups supported at the moment) in the DB,
so their ids are persistent for the duration of the forked-daapd session.

Those ids are used to, among other things, retrieve artwork, so we must
provide ourselves some persistence here.

This brings us to schema version 8.
2010-03-06 19:02:49 +01:00
Julien BLACHE 88dde32fc7 Recompute all songalbumids at startup
Due to the two Murmur64 implementations for 64 and 32bit machines, the
hash is not compatible when moving the SQLite DB between 32/64 bit hosts.

So we'll recompute all the songalbumids at startup, just in case.
2010-03-06 18:59:58 +01:00
Julien BLACHE 748cca63be Maintain songalbumid inside the files table
songalbumid is used a lot in queries from Remote; computing the hash for
each row is a major waste of time on big libraries and slow machines, so
let's store the hash in the table.

This brings us to schema version 7.
2010-03-06 17:29:37 +01:00
Julien BLACHE 5d41d2d99c Move file_size to an int64_t, matching other types (off_t) 2010-02-02 21:09:55 +01:00
Julien BLACHE 762d80e0bb Add Remote pairing info storage facility
This brings schema_version to 6.
2010-01-30 17:30:22 +01:00
Ace Jones 3fef4334bb Add support for smart playlists and some default ones
Add system playlists for Music, Movies, TV Shows, equivalent to iTunes.
2010-01-21 17:52:51 +01:00
Julien BLACHE 364b22c030 Implement directory rescanning on top of kqueue/kevent for FreeBSD 2010-01-12 18:45:44 +01:00
Julien BLACHE 79cdb4f9aa Make forked-daapd build on GNU/kFreeBSD 2010-01-10 17:49:01 +01:00
Ace Jones 5cfbe75bae Add database code for groups queries 2010-01-10 14:43:22 +01:00
Julien BLACHE 9695c11186 Add an opaque pointer to watch_info
Used on FreeBSD to hold a pointer to the kevent struct.
2010-01-09 13:45:33 +01:00