125 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
ca08f4540f metadata: Fix NFO parsing
The switch to dymanic allocation was botched. Fix it.
2017-07-28 17:28:15 -07:00
Justin Maggard
46c692fc59 metadata: Reduce stack usage in nfo parsing
64KB is a bit much for a stack buffer.  Use dynamic allocation instead.
2017-05-17 13:55:13 -07:00
Justin Maggard
2b3bdb8373 utils: Move duration formatting to shared function
We'll be using this a few different places.
2017-05-17 11:56:44 -07:00
Justin Maggard
f816911f0c metadata: Fix potential crash on 3GP scanning
If we encounter a 3GP video file with no audio stream, we could end up
accessing out-of-bounds memory.
2017-05-01 17:40:20 -07:00
Justin Maggard
da91cb8de2 metadata: add libavformat > 57 compatibility
AVStream will no longer have a AVCodecContext reference after
libavformat major version 57.
2016-09-28 15:02:18 -07:00
Justin Maggard
abc1972600 inotify: fix SQL error when moving captions
Change INSERT to INSERT OR REPLACE when recording caption file moves,
to avoid UNIQUE constraint failures.
2016-03-17 14:48:05 -07:00
Justin Maggard
acac5fb3bc metadata: Handle cover art streams that come after the video stream.
SF patch #140 (`check_embedded_art` not called when Cover Art at end of file)

Using MP4Box, the Cover Art is added after the video stream.

Thanks Mathieu Malaterre.
2015-07-30 15:35:38 -07:00
Justin Maggard
e165dbf7a9 metadata: Properly escape episode titles from nfo files. 2015-04-08 23:27:47 -07:00
Justin Maggard
24fb139678 metadata: Use "Album Artist" tag from AAC files.
Add Album Artist AAC metadata parsing contributed by SF user knono549.
Then, change music metadata gathering code to use either Album Artist
or Band as upnp:artist.
2015-02-03 17:22:32 -08:00
Justin Maggard
0e55facacd metadata: support 64-bit time_t
OpenBSD moved all machine architectures to long long time_t in the last
release which triggered a crash in minidlna's scanner on 32-bit systems.

Reported-by: Stuart Henderson
2014-06-11 10:23:23 -07:00
Justin Maggard
bb9d584a86 metadata: get rid of some unnecessary mallocs 2014-05-16 11:07:43 -07:00
Justin Maggard
2ab6d21dbf metadata: get embedded cover art from video files using libavformat
Newer version of libavformat can grab cover art, so we'll go ahead
and use it.  We also need to make sure we don't confuse cover art
with a normal video stream.
2014-05-16 09:58:54 -07:00
Justin Maggard
05cde8a79f metadata: more libav10 compatibility changes
Add a couple more compatibility wrappers.
2014-05-14 18:33:26 -07:00
Justin Maggard
361bc34f93 metadata: add libavcodec > 54 compatibility
libavcodec55 brings some API changes, including CodecID => AVCodecID.
Add a compatibility wrapper so we can build with libavcodec >= 55.
2014-05-14 15:44:15 -07:00
Justin Maggard
4eeb0858e4 Merge commit '750917f7ea9876d7a97f48aa4b22097fcf7958d9' 2014-04-28 10:47:01 -07:00
Justin Maggard
e4fcb717e7 log: replace a few fprintf's with DPRINTF's. 2014-04-25 17:31:12 -07:00
Justin Maggard
be5f4a50eb Type data pointer variables as uint8_t. 2014-04-25 14:30:38 -07:00
Justin Maggard
381c4805e6 subtitles: accept smi in addition to srt 2014-04-21 15:44:39 -07:00
Spencer Oliver
f26a9217e4 metadata: handle escaped .nfo files
Some nfo files may contain xml escape chars, as generated by MediaElch.
This will remove any escape chars found so that they can be correctly
handled by minidlna.

Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
2014-01-31 15:33:51 -08:00
Justin Maggard
8d6ce5e8b5 Handle new H.264 profile in recent ffmpeg versions. 2013-10-22 19:02:02 -07:00
Justin Maggard
42bd49276f * Fix compile issue with old ffmpeg versions. 2013-03-09 00:03:03 +00:00
Justin Maggard
fa37df8b1f * Add support for TiVo MPEG-TS files. 2012-11-03 09:45:45 +00:00
Justin Maggard
d5ebaa13f0 * Fix a potential divide-by-zero error. 2012-10-09 20:07:15 +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
fdcdd9ded8 * Fix inotify parsing of new video symlinks. (SF bug #3552473) 2012-08-20 21:30:16 +00:00
Justin Maggard
89c70bab24 * Fix ffmpeg API version checks. (SF bug #3549925) 2012-07-30 19:56:30 +00:00
Justin Maggard
f0c7768533 * Add a flag to tell ParseNameValue() to store empty XML elements. 2012-07-10 21:12:10 +00:00
Justin Maggard
074055aa4d * Fix compiling with certain ffmpeg versions. 2012-07-10 07:51:42 +00:00
Justin Maggard
c64a76a535 * Fix compiling issues after moving is_tivo_file(). 2012-07-07 00:20:30 +00:00
Justin Maggard
5f14c68597 * Streamline some TiVo ifdefs. 2012-06-30 00:26:55 +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
40f3664390 * Fix warn_unused_result compiler warnings with FORTIFY_SOURCE defined. 2012-03-28 08:15:15 +00:00
Justin Maggard
29738ed064 * Correctly proccess paths with brackets. 2012-03-28 06:43:28 +00:00
Justin Maggard
cabbd0b1de * Use an asprintf wrapper, to report errors and NULLify the result. 2012-03-14 17:57:21 +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
0687d8f6d8 * Trim the camera model from EXIF tags. 2012-02-13 22:44:36 +00:00
Justin Maggard
fe581c5e7f * Fix a couple errors in the rotation code. 2012-01-23 18:51:48 +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
edcdb027d0 * Escape image creator/camera model text. (SF Bug #3460941) 2011-12-16 21:40:43 +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
875f0e2351 * Fix some unused result warnings.
* Handle folder art a little differently than file album art.
2011-11-19 08:26:10 +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
1fc5f599f1 * Fix a crash when scanning images without read access. (SF bug #3395670) 2011-08-22 18:24:19 +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
4d6b956bda * Fix crash due to uninitialized AVFormatContext pointer. (Thanks Wolfram Gloger) 2011-07-18 18:03:45 +00:00
Justin Maggard
e3506a60f1 * Don't use private field from ffmpeg to get raw TS packet size, since it does not work in all ffmpeg versions. (Thanks Wolfram Gloger) 2011-07-18 18:00:29 +00:00
Justin Maggard
88b253968f * Fix compiling issues with some ffmpeg/libav versions. 2011-07-13 18:47:57 +00:00
Justin Maggard
018a0651c0 * Add a couple definitions that are now missing on libav-0.7. 2011-07-01 18:17:27 +00:00