102 Commits

Author SHA1 Message Date
Justin Maggard
9f1677825c Fix some warnings from newer compilers 2020-11-18 14:45:11 -08:00
Takeshich NAKAMURA
799e6cf505 Add DSD file support
* add mimetype audio/x-dsd  (.dsf/.dff)
* add id3tag and fileinfo support (only .dsf)
2018-05-04 16:11:25 -07:00
Justin Maggard
138d03db19 Reload log file on SIGHUP
There's a report about a nightly "crash" when users download, compile
from source, and replace their distro's mindlnad binary.  This is because
the Debian package includes a patch that uses SIGUSR2 to reopen the log
file and sends SIGUSR2 from logrotate instead of just using the
"copytruncate" logrotate option.  Then logrotate sends SIGUSR2 at 6:25AM,
which causes us to abort due to the unhandled signal.

I don't want to sacrifice SIGUSR2 just for log rotation, especially when
we already do some reload operations on SIGHUP.  So to avoid this
Debian/Ubuntu issue, we'll explicitly ignore SIGUSR2, and add log file
reopening to the SIGHUP handler.  Then hopefully a future Debian package
version will remove the SIGUSR2 patch and use SIGHUP instead (or
copytruncate).

Fixes: SF Bug #313 (log rotation kills minidlna service)
2018-01-23 22:01:10 -08:00
Justin Maggard
3e9ca13fa3 upnpsoap: Add forced alphasort capability
Add the ability to force title modification for clients that do their own
alphanumeric sorting.  Adding a '!' to the beginning of the
force_sort_criteria value will enable this behavior.

It is implemented by prepending all titles with a zero-padded number, and
possibly season and episode (or disc and track) numbers if they aren't
already in the title.
2018-01-11 11:12:22 -08:00
Justin Maggard
8bdba2f40d options: Add enable_subtitles config option
Enable generic subtitle support by default for unknown clients.  Set the
new enable_subtitles option to false to revert to the old behavior.
2018-01-11 11:11:42 -08:00
Justin Maggard
c760a338e0 Wrap up version 1.2.1. 2017-08-24 10:28:25 -07:00
Justin Maggard
50b1a2e289 scanner: Clean up non-destructive rescan
Fix several issues with the non-destructive rescan functionality.
Most of these issues also affected inotify scanning as well.  These
include annoying debug messages, adding album art for files that we
aren't supposed to be scanning anyway, incrementing the UpdateID when no
changes were made to the database, and other smaller issues.
2017-08-23 23:43:42 -07:00
Justin Maggard
c50936c347 Wrap up version 1.2.0. 2017-05-17 13:55:17 -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
0575299a87 tivo: Add Avahi support
TiVo Bolt doesn't support the old TiVo Beacon discovery mechanism, so
we need to support Bonjour discovery now.  Use Avahi if it's available.
2017-04-28 01:18:53 -07:00
Justin Maggard
d1cd7c7a4a Wrap up version 1.1.6. 2016-06-16 14:29:22 -07:00
Justin Maggard
1f46b53030 Remove obsolete PNPX support.
AFAICT this has been abandoned by Microsoft.
2016-04-21 14:38:45 -07:00
Justin Maggard
c4166b3e77 options: Add wide_links config option.
In some environments, it makes sense to validate that symlink destinations
remain inside user-defined media_dirs.  Make this behavior configurable.
2016-03-17 14:48:05 -07:00
Justin Maggard
e008ab04bb Wrap up version 1.1.5. 2015-09-10 12:24:09 -07:00
Justin Maggard
7fe24ae1bc Wrap up version 1.1.4. 2014-08-26 14:09:22 -07:00
Justin Maggard
2caa05f69a Update NEWS. 2014-07-18 15:36:36 -07:00
Justin Maggard
173f6a76d7 Wrap up version 1.1.3. 2014-06-05 15:14: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
cb95ca6e06 Wrap up version 1.1.2. 2014-03-06 16:30:25 -08:00
Justin Maggard
fe7c26da2f ssdp: send a full byebye + alive set when a new interface comes online
If an interface comes online after startup, we really need to send a
complete byebye + alive set on that interface, but we don't want to do
it for other interfaces.  So do it as the interfaces come up, and
skip it for interfaces that existed before the reload.
2014-02-26 15:04:46 -08:00
Justin Maggard
3f4877cf2f Add a new force_sort_criteria option, to globally override the SortCriteria value sent by the client. 2014-01-07 11:30:15 -08:00
Justin Maggard
eeffcf47dd Wrap up 1.1.1 release. 2013-11-01 18:06:41 -07:00
Justin Maggard
62b6e235b1 Don't require a configured network interface to start up, and add network interface monitoring support on Linux. 2013-05-08 23:52:02 -07:00
Justin Maggard
bcc69d0dd3 * Wrap up v1.1.0. 2013-04-04 23:39:12 +00:00
Justin Maggard
1c748c1d5a * Consolidate client detection code.
* Add forced sorting support for Panasonic devices.
2013-03-18 05:37:46 +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
2e120e83a0 * Add some logging and forking tweaks to work better with systemd. 2012-10-04 21:04:36 +00:00
Justin Maggard
6b5e121f13 * Add DLNA.ORG_FLAGS support, and clean up transferMode support. 2012-02-14 18:43:35 +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
cb5ab0b1c6 * Add a verbose logging parameter and playlist skipping, based on SF bug #3395238. 2011-09-03 01:54:39 +00:00
Justin Maggard
757eacc236 * Finalize version 1.0.22. 2011-08-25 01:27:56 +00:00
Justin Maggard
546175743a * Add WAV MIME workaround for Marantz Receivers and Roku SoundBridge.
* Fix bitrate displayed on Microsoft PFS devices.
2011-08-18 23:24:17 +00:00
Justin Maggard
d5b77cbd46 * Add bookmark support for Samsung TVs. 2011-08-05 20:36:54 +00:00
Justin Maggard
0b3295b701 * Use MiniSSDPd if it is available. (Thanks Thomas Bernard) 2011-07-22 23:03:38 +00:00
Justin Maggard
a818f5db33 * Finalize version 1.0.21. 2011-07-18 21:47:39 +00:00
Justin Maggard
eff8bf22db * Fix FF/REW of AVI files on Samsung Series B TV's. 2011-07-11 20:01:42 +00:00
Justin Maggard
996f85e025 * Bump verion to 1.0.20.2. 2011-06-27 23:33:10 +00:00
Justin Maggard
ba3af759e1 * Support a couple new DLNA profiles that Windows likes to use. 2011-06-27 23:10:16 +00:00
Justin Maggard
ab2533ea97 * Add PnP-X info for a couple more models. 2011-06-23 17:45:45 +00:00
Justin Maggard
14b8dabc28 * Finalize v1.0.20. 2011-06-10 02:05:54 +00:00
Justin Maggard
1ca6bb2eb1 * Increment to 1.0.19.3 to indicate LG subtitle support. 2011-05-17 18:55:29 +00:00
Justin Maggard
5782be8ab2 * Improve WMA DLNA profile parsing. 2011-05-17 00:25:03 +00:00
Justin Maggard
a9fc61855d * Increment version to 1.0.19.2 to indicate fixed crash bug. 2011-05-16 20:17:35 +00:00
Justin Maggard
e0e0fa254d * Fix a couple minor DLNA correctness issues. 2011-04-28 23:01:28 +00:00
Justin Maggard
4572a49cf3 * Carry over the last change one more place. 2011-04-26 23:00:04 +00:00
Justin Maggard
b7f69e2e8e * Increment version to 1.0.19.1 to signify all the recent client adaptation changes. 2011-04-13 23:08:45 +00:00
Justin Maggard
d4ad581327 * Add several profile variants to our supported list. 2011-04-04 22:21:27 +00:00
Justin Maggard
36c1ae3948 * Replace __u32's with uint32_t. 2011-03-02 22:23:36 +00:00