Commit Graph

103 Commits

Author SHA1 Message Date
Justin Maggard 9e534c56fd monitor: Support NFO file changes
Detect when a .nfo file changes, and rescan metadata for the associated
video file.
2017-08-22 15:30:10 -07:00
Justin Maggard 4f926639b2 upnpsoap: Add additonal bookmark support
Add support for upnp:playbackCount and upnp:lastPlaybackPosition tags.
These are used by Kodi to keep track of bookmark information as well as
determining whether to show the checkmark to indicate that the video
has been played.

Also add support for the UpdateObject command, which Kodi uses to
update the playbackCount and lastPlaybackPosition information.

This change requires a DB schema update, which should be done
automatically on the first run.

Inspired by SF user Karsten's patch #167.
2017-05-17 12:01:04 -07:00
Justin Maggard 49aa42d893 scanner: Add non-destructive update rescan
New functionality, based on Shrimpkin's patch #145 on SF.
2017-05-04 23:29:59 -07:00
Justin Maggard 1c5e9ae61c containers: Add gettext support for magic containers.
Run the magic contain names through gettext, so they can get localized.
2015-12-21 11:49:07 -08:00
Justin Maggard e4dab2455b scanner: Add more vebose scan error message.
Print the errno in addition to the generic error message.
2015-09-10 11:57:31 -07:00
Justin Maggard 8029921884 containers: add magic container infrastructure
Add support for dynamic containers, with enough flexibility to also
replace our existing container ID replacement functionality.
2014-07-01 17:08:18 -07:00
Justin Maggard 34cb08928c portability: add support for Illumos
This still won't work on older Solaris systems, but modern Illumos
at least should build and run now.
2014-05-14 17:53:25 -07:00
Justin Maggard 61bb91ecc9 scanner: check defined media types before parsing files 2014-04-28 16:01:30 -07:00
Justin Maggard e4fcb717e7 log: replace a few fprintf's with DPRINTF's. 2014-04-25 17:31:12 -07:00
Catalin Patulea 3a57744735 Add printf attribute to log_err/DPRINTF and fix a few warnings
Modified to not use %z for portability reasons.
2014-04-10 18:57:30 -07:00
Justin Maggard 6e43ab3c06 Introduce THISORNUL macro. 2014-04-07 10:29:56 -07:00
Justin Maggard cce9a012b3 config: add merge_media_dirs option
By default, if there are multiple media directories specified, there
will be entries for each one in the root directory container.  If
there is only one media directory specified, then just its contents
will be in the root container, to save one level of browsing.

Setting this option changes the default behavior so that multiple
media dirs will behave like a single media dir.
2014-03-12 11:40:49 -07:00
Justin Maggard 1e7fe1413c scanner: Avoid largeish stack allocations in recursive function. 2014-02-03 12:34:48 -08:00
Justin Maggard 5b35d3a165 scanner: Add an extra level if there are multiple media locations.
Before, the top level of folder browsing could be messy if you were
using multiple media directories.  This should tidyt things up.
2014-01-31 17:43:58 -08:00
Justin Maggard 2e68335430 * Filter out hidden files and folders. 2013-10-10 00:04:25 -07:00
Justin Maggard f06a93c17a * Store the media type in the TIMESTAMP column, so we can force a rescan if the user changes the media type configuration. 2013-01-02 21:00:52 +00:00
Justin Maggard 2521b3f238 * Force a rescan if a media_dir has been removed from the configuration. 2012-11-16 08:06:24 +00:00
Justin Maggard 584258c1f8 * Add support for limiting a media dir to multiple media types. 2012-10-03 07:26:00 +00:00
Justin Maggard fdcdd9ded8 * Fix inotify parsing of new video symlinks. (SF bug #3552473) 2012-08-20 21:30:16 +00:00
Justin Maggard 61fbce18ba * Replace sqlite_int64 with int64_t in many places, to better allow for the possibility of other databases. (Thanks Douglas Carmichael) 2012-06-29 23:14:27 +00:00
Justin Maggard 2c7a3bfc06 * Add support for the latest ffmpeg/libav library versions. 2012-06-29 21:06:23 +00:00
Justin Maggard cf8ddddcce * Clean up some potential buffer overruns. (SF bug #3536546) 2012-06-26 18:13:48 +00:00
Justin Maggard 2661cd8a0c * Move database-specific DB creation bits to a separate file. 2012-05-16 01:22:11 +00:00
Justin Maggard 40f3664390 * Fix warn_unused_result compiler warnings with FORTIFY_SOURCE defined. 2012-03-28 08:15:15 +00:00
Justin Maggard c5bb5c84b3 * Add image rotation support during resize. (mostly useful for TiVo) 2012-01-22 00:33:55 +00:00
Justin Maggard 0919e28b3a * Fix inotify detection issue on first-level folders. 2011-12-26 10:14:21 +00:00
Justin Maggard c415fbdbf3 * Make some necessary changes to function on old OSes (like CentOS 5.7). 2011-12-07 03:55:20 +00:00
Justin Maggard 4d4d96e1bb * Separate album containers with different artists. 2011-11-03 00:48:14 +00:00
Justin Maggard a9d2e6dd44 * Make metadata-based virtual containers case insensitive. 2011-11-02 01:48:59 +00:00
Justin Maggard 773e1f6566 * Add support for other operating systems (kFreeBSD, FreeBSD, and OSX for now).
* Switch to autoconf from genconfig.sh.
2011-09-16 23:39:58 +00:00
Justin Maggard 715af3519b * Fixup last checkin. 2011-09-04 04:07:36 +00:00
Justin Maggard cb5ab0b1c6 * Add a verbose logging parameter and playlist skipping, based on SF bug #3395238. 2011-09-03 01:54:39 +00:00
Justin Maggard 0d5e89a970 * Fix bug from the last checkin. 2011-08-25 00:37:10 +00:00
Justin Maggard 1fc5f599f1 * Fix a crash when scanning images without read access. (SF bug #3395670) 2011-08-22 18:24:19 +00:00
Justin Maggard d5b77cbd46 * Add bookmark support for Samsung TVs. 2011-08-05 20:36:54 +00:00
Justin Maggard cdc93f680f * Add thumbnail support on folders, since at least XBMC supports it. 2011-08-05 00:31:20 +00:00
Justin Maggard 9a9270cecf * Fix some issues reported by cppcheck. 2011-05-02 23:50:52 +00:00
Justin Maggard 88b992bd51 * Escape video tags. 2011-04-21 08:50:44 +00:00
Justin Maggard 9c6dc1029a * Remove .musicArtist from All Artists, so it doesn't get included in UPnP search requests for object.container.person.musicArtist. 2011-04-13 23:08:21 +00:00
Justin Maggard 53db844772 * Use matching container classes for All Artist/Albums, so they'll go to the top of a class-sorted list. 2011-04-12 20:57:01 +00:00
Justin Maggard a8d204dd0d * Do no add inaccessible directories to the database. (Thanks Ivan Mironov) 2011-04-08 02:16:15 +00:00
Justin Maggard 2170f6a53b * Break out of the scanner on SIGTERM with forking disabled. 2011-02-26 00:02:33 +00:00
Justin Maggard 9327b9fcbd * Use containter definitions instead of hard-coding them. 2011-02-15 00:37:42 +00:00
Justin Maggard 14a0d1ac98 * Don't expose album art images in the content directory.
* Support album art name wildcards.
2011-02-14 23:52:10 +00:00
Justin Maggard 8e0fcd56f9 * Complete/clarify license information. 2010-11-11 23:48:14 +00:00
Justin Maggard da624cedfd * Add more translations. 2010-08-09 23:49:17 +00:00
Justin Maggard ff59bc9ab9 * Remove the last remnants of hard-coded ObjectIDs. 2010-08-09 17:21:27 +00:00
Justin Maggard c97d359fe2 * Make Xbox360 support more generic for use with other PlaysForSure clients. 2010-08-05 23:09:11 +00:00
Justin Maggard 291b31f98a * Add basic NLS support, so clients can display localized strings during browsing if it's properly enabled. 2010-07-17 00:47:48 +00:00
Justin Maggard 346ff6e293 * Add M3U/PLS music playlist support. 2010-01-13 21:15:26 +00:00