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
ejurgensen
4d47307a02
[db/filescanner] Add index on fname, change playlist matching (wip)
2017-10-17 23:11:31 +02:00
ejurgensen
45bd2d6cc8
[filescanner] Protect URL items in playlists from purge after scan
2017-10-17 23:11:31 +02:00
ejurgensen
10bd30c036
[filescanner] Update playlist scanner to use db_file_ping_bypath() to save queries
2017-10-17 23:10:21 +02:00
ejurgensen
fa2b4b810f
[filescanner] Reduce number of queries during scan
...
Instead of SELECT'ing timestamp and then UPDATE'ing with a ping if file is
unchanged, skip the SELECT and just do a conditional UPDATE.
2017-10-17 23:10:21 +02:00
ejurgensen
95121e7157
[filescanner] Improve playlist scan speed with transactions (WIP - not working for URL's)
2017-10-17 23:10:21 +02:00
ejurgensen
0c2773039b
[-] Fix alsa.c null pointer deref + some minor bugs and do some housekeeping
...
Thanks to Denis Denisov and cppcheck for notifying about the below. The leaks
are edge cases, but the warning of dereference of avail in alsa.c points at
a bug that could probably cause actual crashes.
[src/evrtsp/rtsp.c:1352]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/httpd_daap.c:228]: (error) Memory leak: s
[src/library.c:280]: (warning) %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'.
[src/library.c:284]: (warning) %d in format string (no. 2) requires 'int' but the argument type is 'unsigned int'.
[src/library/filescanner_playlist.c:251]: (error) Resource leak: fp
[src/library/filescanner_playlist.c:273]: (error) Resource leak: fp
[src/outputs/alsa.c:143]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/outputs/alsa.c:657]: (warning) Possible null pointer dereference: avail
[src/outputs/dummy.c:75]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/outputs/fifo.c:245]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/outputs/raop.c:1806]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
[src/outputs/raop.c:1371]: (warning) %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'.
[src/outputs/raop.c:1471]: (warning) %u in format string (no. 1) requires 'unsigned int' but the argument type is 'signed int'.
[src/outputs/raop_verification.c:705] -> [src/outputs/raop_verification.c:667]: (warning) Either the condition 'if(len_M)' is redundant or there is possible null pointer dereference: len_M.
2017-10-05 22:13:01 +02:00
ejurgensen
2d3d641f41
Merge pull request #413 from chme/realpath
...
[misc] Replace m_realpath with realpath from stdlib.h
2017-08-12 21:52:30 +02:00
chme
14877a49e0
[misc] Replace m_realpath with realpath from stdlib.h
2017-08-12 13:35:22 +02:00
chme
d477294809
[filescanner] Guard against modifying files outside the library and
...
guard against creating m3u playlists with the same virtual path like pls
playlists
2017-08-12 10:22:18 +02:00
chme
d10c3672c6
[filescanner] Add support to save/add/delete local stored playlists
...
Allows creating/modifying of playlists in one of the configured library
directories.
2017-08-09 21:41:32 +02:00
ejurgensen
e489f1a6a9
[configure] Use avcodec_parameters_from_context as check for codecpar
2017-08-06 22:31:43 +02:00
ejurgensen
d933e171d4
[filescanner_ffmpeg] Update to use ffmpeg's new stream->codecpar
...
- keep some compability with older ffmpeg/libav, but also remove some
2017-08-06 22:20:44 +02:00
chme
b6807a24aa
[filescanner] Add missing break statement in process_file
2017-07-14 17:21:08 +02:00
ejurgensen
f63d103753
[raop] Add support for Apple TV device verification, required by tvOS 10.2 (fix for issue #377 )
...
- also change how speakers are saved/retrieved from the db
- add generic authorization methods in outputs.c and player.c
- let filescanner read *.verification files (containing PIN)
- configure options to enable and disable, since libsodium is required
2017-06-19 21:52:01 +02:00
ejurgensen
283df8aa72
[misc] Consolidate control file reader (e.g. for pairing credentials) into misc.c
...
- also remove requirement to enter device name in .remote file
2017-06-14 23:49:18 +02:00
chme
8ed1c9c0ec
[pairing] Rename 'remote_pairing_read_pin' to
...
'remote_pairing_kickoff_byfile'
2017-04-29 23:36:11 +02:00
chme
cc29c617b0
[filescanner] Switch argument order (input first)
2017-03-19 18:30:46 +01:00
chme
e31fea6c44
[filescanner] Remove unused include and make privat function static
2017-03-19 18:30:46 +01:00
chme
59ade61d7b
[library] Rename constants
2017-03-19 18:30:46 +01:00
chme
f4aade7f3a
[filescanner] Fix and refactor scanning of playlists
2017-03-19 18:30:46 +01:00
chme
a65737b4e7
[filescanner] Add scan-metadata function for non library items
...
For now only support scanning metadata for internet radio streams
2017-03-19 18:30:46 +01:00
chme
bdd08f516f
[library] Rename 'library_process_media' to 'library_add_media'
2017-03-19 18:30:46 +01:00
chme
dadba23efc
Refactor library scan of media files
...
Remove the data_kind specific parts out of the general library functions
and into their (library) source specific functions.
2017-03-19 18:30:46 +01:00
chme
50b28bde96
[filescanner] Remove unused scan_metadata_icy function declaration
2017-02-26 11:04:04 +01:00
chme
78975b1aa3
[filescanner_ffmpeg] Add doc to scan_metadata_ffmpeg
2017-02-26 11:04:04 +01:00
chme
e4f25f9418
[filescanner_ffmpeg] Refactor: consolidate special handling for
...
http-streams
2017-02-26 11:04:04 +01:00
ejurgensen
97aa544945
[library] Move library update trigger to new library module
2017-01-28 22:20:35 +01:00
ejurgensen
60daf03f66
[cache/scan] Let notifications from db.c about library updates go through
...
filescanner/listener instead of directly to the cache
2017-01-27 22:25:32 +01:00
chme
00efed7988
[filescanner] Fix scanning of fifos
2017-01-14 13:59:14 +01:00
chme
528614909c
[filescanner/library] Move filescanner to subfolder
2017-01-13 19:02:47 +01:00