ejurgensen
189370df91
[scan] Update smartpl scanner to use filescanner util functions
2020-02-08 10:55:15 +01:00
ejurgensen
2a69869816
[scan] Update iTunes scanner to use new filescanner util functions
2020-02-08 10:55:15 +01:00
ejurgensen
46a9114948
[scan] Support for nested playlists
...
Also includes some refactoring of the playlist filescanner and some
rearrangement of filescanner.c functions.
2020-02-08 10:55:15 +01:00
ejurgensen
abdc0d6d27
[library] Some refactoring of the library module
...
Misc refactoring, e.g. alignment of how modules save tracks and playlists, incl
use of mfi and pli. Also try to avoid direct calls between library and player.
2020-02-08 10:55:15 +01:00
ejurgensen
16cfca1bfe
[scan] Remove some id3 tags that ffmpeg parses better (issue #882 )
...
ffmpeg parses TDA, TDAT, TYE, TYER and TDR these days, so there is no need
to do that in forked-daapd. Also the parsing of TDA/TDAT was incorrect,
since it is MMDD.
2020-01-14 20:33:39 +01:00
ejurgensen
8248d2fe9f
[scan] Fix access violation if pls line has no '='
2019-12-27 23:58:57 +01:00
ejurgensen
56d3f42598
Fix a few gcc 8 / scan-build compiler warnings
2019-09-22 00:51:17 +02:00
Christian Meffert
e608b763ef
Merge pull request #752 from whatdoineed2do/db-queue-quality
...
db queue to incl media quality info
2019-07-09 20:19:10 +02:00
whatdoineed2do/Ray
8f311d4360
[library] support forced metadata scan of library, via '.meta-rescan' file
2019-07-09 13:54:59 +02:00
whatdoineed2do/Ray
e2d62a62a4
[scan] extract 'channels' from (files) audio and type/bitrate/samplerate/channels from streams
2019-06-12 16:52:02 +01:00
Christian Meffert
cbd8d8a44d
Merge pull request #740 from whatdoineed2do/library-https-stream
...
[library] accept https:// streams
2019-05-18 07:36:45 +02:00
ejurgensen
35a585c23e
[scan] Use MusicBrainz and other tags to set songalbumid
...
Credit to @whatdoineed2do for finding tags and suggesting this change.
2019-05-17 23:03:05 +02:00
whatdoineed2do/Ray
bc8a156132
[library] accept https:// streams
2019-05-12 11:07:08 +01:00
ejurgensen
55d9d9e6bd
[xcode/artwork] Drop support for ffmpeg legacy versions
2019-04-08 22:06:56 +02:00
ejurgensen
7abf68200d
[scan] Fix parsing of iTunes "Play Date" tag ( fixes #683 )
...
"Play Date" tag was seconds since 1904 (an Apple Mac HFS+ timestamp), not a
Unix timestamp as we assumed. Seems Apple themselves realised that wasn't a
great idea (+ not a proper plist date type), and therefore provide "Play Date
UTC" as an alternative.
2019-01-30 22:32:46 +01:00
ejurgensen
19c39bf133
[scan] Always use compilation_artist for tracks in compilation dir
...
Reason is that tracks in compilation dir are not to be trusted when it comes
to album_artist.
See afee99d5db (commitcomment-31807556)
.
2018-12-31 15:55:49 +01:00
ejurgensen
1de8f39264
[db] Generic fixup + align fixing up between mfi, pli and queue_item
...
The idea here is to make sure the fixing up of tags is done in a consistent
manner. For strings, this means stuff like trimming and empty strings -> null
are applied the same unless there are special exception rules set. It also
means that defaults are applied the same across structs, e.g. "Unknown artist"
for both mfi->artist and queue_item->artist.
The change is also necessary because we want to remove trimming from the sql
query and instead implement it ourselves.
2018-12-31 15:55:49 +01:00
chme
21ce281cd1
[filescanner] Fix Use-after-free error
...
library/filescanner_ffmpeg.c:396:7: warning: Use of memory after it is
freed
2018-12-29 16:34:56 +01:00
chme
dc020cc3ac
[db/filescanner/spotify] Set directory path
2018-12-18 08:28:19 +01:00
chme
a8e8dc1999
[library/db/filescanner/spotify] Reshuffle after adding non library
...
items to the queue
2018-11-11 07:01:22 +01:00
chme
4cf71bafcc
Merge pull request #605 from chme/play_next
...
[jsonapi] Add support for a position parameter in the queue/items/add endpoint
2018-11-02 18:38:10 +01:00
chme
8d8663e93d
[db/queue] Support adding non-library items at a given position to the
...
queue
2018-10-25 19:36:43 +02:00
whatdoineed2do/Ray
3b10049d72
[filescanner] parse https streams for m3u
2018-10-23 10:06:11 +01:00
ejurgensen
4a16384d3a
[filescanner] Convert plist timestamps to Unix when importing iTunes XML
2018-09-18 20:29:28 +02:00
ejurgensen
fde0a28142
Support for skip_count and time_skipped file metadata
2018-08-18 22:56:27 +02:00
ejurgensen
0d4dd06b51
[filescanner] iTunes XML mapping of Play Count and Play Date
...
See issue #549
2018-06-25 20:03:38 +02:00
chme
f167e975c2
Unify naming of "order by" clause in structs/table
2018-04-15 22:11:40 +02:00
chme
6bdcda1524
[db/filescanner] Upgrade database to v19.08 and support limit/order by
...
in smart playlist files
2018-04-15 22:11:40 +02:00
chme
5189fe2305
[smartpl/filescanner] Refactor smart playlist parsing
...
Moves the actual parsing with ANTLR3 out of filescanner.c to allow
future reuse in different context (JSON api)
2018-04-15 22:11:40 +02:00
chme
7dd8955a92
[filescanner] Add http stream to the library prior to adding to a
...
persistent playlist
2018-04-15 22:09:28 +02:00
chme
60ebac076b
Refactor adding non library items to the queue
...
Instead of asking a client to first scan the path into a media_file_info
object and afterwards add it to the queue, we now offer a library
function to directly add a path.
The library-source that can handle the given path translates the path
into new queue item(s) and adds them to the queue.
2018-04-15 22:09:28 +02:00
ejurgensen
e70f9623db
[filescanner] Update ffmpeg id3 tag mapping, include grouping tags
2018-01-31 21:46:17 +01:00
ejurgensen
c23f2c01b2
[scan] Fix bugs related to iTunes XML playlists
...
1) They would get disabled after rescan
2) Playlists and playlistitems didn't get cleaned up
2018-01-25 22:26:00 +01:00
ejurgensen
e1fb3607e9
[scan] Treat playlists with mtime==db_timestamp as modified + better virtual_path for iTunes XML playlists
...
Should fix a problem where saving a playlist with gedit was not picked up by forked-daapd as a modification
2018-01-24 21:36:50 +01:00
ejurgensen
45d193e56c
[scan] Use open()/close() instead of euidaccess() to support ACL's
...
Fixes #474
2018-01-06 20:10:34 +01:00
ejurgensen
b428760599
[scan] Fix for issue #463 , fname not getting updated on file rename
...
Also modify code style of _enable/_disable functions in db.c
2017-12-16 23:09:29 +01:00
Wolfgang Scherer
0d006904da
[scan] Consistent HTTP virtual paths ( #449 )
2017-12-02 16:44:01 +01:00
Wolfgang Scherer
3d43721cd0
[scan] After rescan, fullrescan inotify must be enabled
2017-11-13 19:52:17 +01:00
ejurgensen
5c3f1e9263
[filescanner] Fixup code style
2017-11-10 00:09:31 +01:00
Wolfgang Scherer
16fa1e77b2
[scan] Configuration option to follow symlinks
2017-11-09 01:16:44 +01:00
ejurgensen
64dd6b93da
[filescanner] Add missing timestamp update in itunes scanner
2017-10-17 23:12:30 +02:00
ejurgensen
e9e8567e8c
[filescanner] Make sure to split in transactions even when playlist tracks are unknown
2017-10-17 23:12:30 +02:00
ejurgensen
2d54d0d8fe
[filescanner] More alignment of iTunes scanner with the playlist scanner
...
I.e. use transactions and don't scan unmodified files
2017-10-17 23:11:31 +02:00
ejurgensen
322abb8274
[filescanner] Copy playlist scan optimisations to itunes scanner
2017-10-17 23:11:31 +02:00
ejurgensen
3520ab030e
[filescanner] Fix wrong param in filescanner_playlist.c
2017-10-17 23:11:31 +02:00
ejurgensen
1070f507a2
[filescanner] Add some const's and various fixup
2017-10-17 23:11:31 +02:00
ejurgensen
78dd8c89b6
[filescanner] Log message modifications
2017-10-17 23:11:31 +02:00
ejurgensen
00b7b97382
[db] Make I_FNAME index case insensitive and search fname using COLLATE NOCASE
...
Also some cleaning up
2017-10-17 23:11:31 +02:00
ejurgensen
88a565ea2c
[db] Replace sqlite3_xxx() calls outside db.c/cache.c so they are abstracted
2017-10-17 23:11:31 +02:00
ejurgensen
47585d0d03
[db] Add methods db_mprintf() and db_snprintf() which wrap sqlite
2017-10-17 23:11:31 +02:00