51 Commits

Author SHA1 Message Date
Justin Maggard
516b025eca * Make JPEG resolution parsing work properly on big-endian systems. 2009-11-06 19:03:56 +00:00
Justin Maggard
a26802539f * Fall back to rudimentary XMP parsing when getting image dates from EXIF fails. 2009-11-05 23:15:29 +00:00
Justin Maggard
c8fe23d838 * Rework the sql_exec function to use format arguments, to simplfy the code.
* Don't set the DB version until after the scan completes.  This way, if only a partial scan has been done, a full scan will be initiated the next time minidlna is started.
2009-11-04 01:38:14 +00:00
Justin Maggard
0f0d22c2f5 * Update database entries if inotify catches a file CLOSE_WRITE and the modify time is newer than the last recorded time in the database. 2009-10-23 02:38:42 +00:00
Justin Maggard
e18cf08880 * Add initial support for 3gp video files.
* Add LPCM to the main SourceProtocolInfo list.
2009-10-21 21:11:57 +00:00
Justin Maggard
f7e525019a * Add SRT subtitle support using Samsung's method. 2009-10-15 00:40:27 +00:00
Justin Maggard
4efa9d06ac * Make strict DLNA adherence optional. Many products appear to handle JPEGs >4096x4096 classified as JPEG_LRG, and it's better to not downscale if we don't have to. 2009-10-14 21:24:23 +00:00
Justin Maggard
b632bf1704 * Use band name for virtual audio containers when it's available. 2009-10-14 03:01:15 +00:00
Justin Maggard
e777a93a5e * Remove ALBUM_ART_PN from the database, since it's forced to be JPEG_TN now.
* Add a DISC entry to the database, so when the client sorts a multi-disc audio album by track, we can sort by disc first.
2009-10-14 01:14:10 +00:00
Justin Maggard
1ef627ac3c * Don't trust EXIF to tell us the accurate resolution; instead, parse the JPEG data ourselves.
* Add on-the-fly downscaling for JPEGs too large to fit the JPEG_LRG DLNA profile.
2009-10-13 01:20:19 +00:00
Justin Maggard
ecec767f17 * Add PCM support, assuming defaults of 44.1K and 2 channels. 2009-10-12 21:07:14 +00:00
Justin Maggard
9ac3e78991 * Give Quicktime MOV files the right MIME type. 2009-10-05 23:19:13 +00:00
Justin Maggard
90dcf17785 * Add Ogg scanning support. 2009-08-07 04:47:35 +00:00
Justin Maggard
6fe702f332 * Change sqlte3_mprintf size specifiers to %lld instead of %jd, since sqlite doesn't work with %jd. 2009-07-24 07:53:00 +00:00
Justin Maggard
0d069effd9 * Fix some minor 64-bit compilation issues. 2009-07-17 22:54:31 +00:00
Justin Maggard
885427c569 * If we can't get a video stream bitrate, leave it NULL instead of calling it 0. 2009-06-30 02:01:34 +00:00
Justin Maggard
84a2f22e66 * Fix crash bug if loading exif data from an image fails. 2009-06-22 22:27:15 +00:00
Justin Maggard
bce6da53ea * Be more picky about what we call thumbnails for JPEG images. Verify that the resolution is <= 160x160 to comply with the DLNA spec. 2009-06-03 20:41:08 +00:00
Justin Maggard
4d58278a5a * Add WMAPRO as a supported profile. 2009-06-02 21:20:47 +00:00
Justin Maggard
c011c4a087 * Add initial support for video cover art.
* Try to handle id3 tags that use non-utf8 and iso8859 charsets.
2009-05-27 23:11:18 +00:00
Justin Maggard
5a08b7e275 * Some minor DLNA conformance fixups. 2009-05-14 22:13:06 +00:00
Justin Maggard
3e7a3cbfb5 * Add WAV file support. 2009-05-12 01:21:53 +00:00
Justin Maggard
ff046503bd * Update client cache if the client type changes on a given IP.
* Default .avi files to MIME type video/x-msvideo for better backward compatibility.
2009-05-01 01:39:55 +00:00
Justin Maggard
27738f3a26 * Fix a couple XML escaping errors. 2009-04-30 09:49:41 +00:00
Justin Maggard
c4ca6527f0 * Invalidate the scanner cache when an inotify deletion takes place. 2009-04-21 02:50:45 +00:00
Justin Maggard
223df2111b * Fix some issues with ampersand escaping.
* Improve image date/camera metadata handling by not storing a date if none exists.
* Add preliminary TiVo video serving support.
2009-04-16 19:20:16 +00:00
Justin Maggard
3f1afeeb40 * Log which file has extra-long vorbis comments.
* Gather duration and bitrate information from FLAC files.
2009-04-04 01:13:14 +00:00
Justin Maggard
104038e204 * Add flash video support, and use a more compatible method of libavcodec version checking. 2009-04-02 21:35:51 +00:00
Justin Maggard
ea70f079f2 * Improve escaping of special characters in returned XML. Should close SF bug ID 2717054. 2009-04-01 22:41:27 +00:00
Justin Maggard
047b9511a6 * Don't classify an MPEG1 video file with the MPEG1 DLNA profile if the resolution is too high for that profile. 2009-04-01 20:16:37 +00:00
Justin Maggard
3aea5d6f07 * Add a fallback method for gathering the date/time an image was taken. 2009-03-30 07:42:24 +00:00
Justin Maggard
0a415861e7 * Fix bug with bad album art. 2009-03-27 22:22:23 +00:00
Justin Maggard
9854e35533 * Add Matroska Video (.mkv) support. 2009-03-27 07:39:09 +00:00
Justin Maggard
9a481196fc * Check all contributor types when determining the artist. 2009-03-26 21:06:51 +00:00
Justin Maggard
ac5a37b27a * Get rid of all depenence on libgd, and use libjpeg directly. 2009-03-19 08:06:27 +00:00
Justin Maggard
9eb6f81a64 * Fallback code for duplicate audio/video extensions (.mp4).
* Fix a couple potential very small memory leaks in the scanner.
2009-03-03 08:14:01 +00:00
Justin Maggard
1c0bf5197d * Handle errors in WMV DLNA profiling. 2009-02-26 01:22:15 +00:00
Justin Maggard
b74e2d33f3 * Use internal music metadata functions intead of taglib.
1) Taglib does not support MP4 or WMA/ASF without hacking it in there.
  2) Taglib is C++, so it's nice to remove that dependency.
* Use embedded album art where available.
2009-02-25 21:16:51 +00:00
Justin Maggard
45f294b404 * Use our own logging mechanism instead of syslog/printf. 2009-02-20 10:21:23 +00:00
Justin Maggard
14547e2266 * Fix inotify detection in the root media directory.
* Hold off creating inotify watches until the initial file scan is complete.
* Use a thread instead of fork when scanning.
2009-02-17 08:25:15 +00:00
Justin Maggard
42be3989bf * Allow users to specify the file names and order that the Album Art scanner will search for.
* Lots of changes for inotify support.
2009-02-10 03:10:09 +00:00
Justin Maggard
a1d385241d * Be more flexible when it comes to album art resolutions. This is really just a recommendation and not an absolute requirement for DLNA compliance. 2009-02-04 02:25:24 +00:00
Justin Maggard
3f454a5762 * Don't depend on libavutil carrying the ff_get_fourcc() function.
* Try determining our IP address with hostname lookup before trying eth0 and eth1.
2009-02-02 22:10:39 +00:00
Justin Maggard
53f764d020 * Free any music metadata memory we allocate. 2009-01-30 18:42:59 +00:00
Justin Maggard
7403cce50c * Simplify PCM detection. 2009-01-30 18:16:24 +00:00
Justin Maggard
8cab1a2800 * Add some conditional statements to work with more ffmpeg library versions.
* Fix a crash bug when generating a friendly name if the hostname does not contain a dot.
* Implement folder browsing by media type.
* Add initial DLNA-compliant music album art support. (Using a <=160x160 cover.jpg, or folder.jpg, etc)
2009-01-30 08:50:09 +00:00
Justin Maggard
577deb028b If EXIF parsing fails, fall through to reading the JPEG data with libjpeg to get the resolution. 2009-01-22 23:48:49 +00:00
Justin Maggard
74d73037d0 Lots of changes, but notably:
* MiniDLNA can now pass the DLNA Conformance Test!
 * Dependence on libdlna has been removed, and the ffmpeg libs are used directly.
 * Lots of unused code has been cleaned up.
 * File transfers will now be forked off into a new process, so as not to tie up the server when sending data.
2009-01-22 00:25:20 +00:00
Justin Maggard
9867def383 * Fix bug with HTTP Range header, when there is no range end.
* Start adding video metadata support using libdlna.  We might need to carry libdlna because it needs some changes, but that project appears to be heading in another direction.
2008-11-07 06:52:03 +00:00
Justin Maggard
ccd9b957f6 Add some video metadata support through libdlna (>0.2.3).
Some more changes for DLNA compliance.
Reformat some other code.
2008-10-30 06:53:17 +00:00