platform/upstream/lightmediascanner.git
16 years agoCheck NULL pointers on public-API, log errors.
Gustavo Sverzut Barbieri [Tue, 27 Nov 2007 00:54:10 +0000 (21:54 -0300)]
Check NULL pointers on public-API, log errors.

16 years agopkg-config support.
Gustavo Sverzut Barbieri [Tue, 27 Nov 2007 00:23:23 +0000 (21:23 -0300)]
pkg-config support.

16 years agoDummy parser to register videos by extension only.
Gustavo Sverzut Barbieri [Mon, 26 Nov 2007 22:44:42 +0000 (19:44 -0300)]
Dummy parser to register videos by extension only.

This parser does no parsing at all, it does not even open the files,
just register files that matches the know extensions.

16 years agoVideo database support.
Gustavo Sverzut Barbieri [Mon, 26 Nov 2007 22:20:47 +0000 (19:20 -0300)]
Video database support.

This database helper will be used by upcoming video parser.

16 years agoDon't store song length in DB, it's unreliable.
Gustavo Sverzut Barbieri [Mon, 26 Nov 2007 21:37:15 +0000 (18:37 -0300)]
Don't store song length in DB, it's unreliable.

16 years agoMP3 support using id3lib.
Gustavo Sverzut Barbieri [Mon, 26 Nov 2007 03:23:31 +0000 (04:23 +0100)]
MP3 support using id3lib.

16 years agoClear dtime on files that had it but were found again.
Gustavo Sverzut Barbieri [Sun, 25 Nov 2007 01:54:59 +0000 (02:54 +0100)]
Clear dtime on files that had it but were found again.

If file was deleted (ie: media was unmounted), it's marked with the
time this deletion was detected (dtime). If it's found again (ie:
media was re-mounted), then this should be made 0 (it's not deleted).

16 years agoFix typo
Gustavo Sverzut Barbieri [Sat, 24 Nov 2007 22:53:59 +0000 (23:53 +0100)]
Fix typo

16 years agoPerformance improvement and safety check.
Gustavo Sverzut Barbieri [Thu, 22 Nov 2007 02:49:07 +0000 (23:49 -0300)]
Performance improvement and safety check.

 * Just process lms_db_*_start() once.
 * Check if _references would drop below 0 and log.

16 years agoAudio database support.
Gustavo Sverzut Barbieri [Thu, 22 Nov 2007 02:26:27 +0000 (23:26 -0300)]
Audio database support.

This database helper will be used by upcoming MP3 parser.

16 years agoAdd lms_db_bind_int64_or_null().
Gustavo Sverzut Barbieri [Thu, 22 Nov 2007 02:25:12 +0000 (23:25 -0300)]
Add lms_db_bind_int64_or_null().

This function will be used to handle cases where int64 fiels can be
NULL, like the upcoming lightmediascanner_db_audio.c

16 years agoCosmetic changes (static and remove string spaces).
Gustavo Sverzut Barbieri [Thu, 22 Nov 2007 00:55:37 +0000 (21:55 -0300)]
Cosmetic changes (static and remove string spaces).

16 years agoRemove useless debug message.
Gustavo Sverzut Barbieri [Wed, 21 Nov 2007 18:07:04 +0000 (15:07 -0300)]
Remove useless debug message.

16 years agoSplit plugin start and setup phase.
Gustavo Sverzut Barbieri [Wed, 21 Nov 2007 00:42:33 +0000 (21:42 -0300)]
Split plugin start and setup phase.

Earlier SQLite3 version doesn't provide sqlite3_prepare_v2(), so if
you change the database schema (ie: create another table or trigger,
...) the previously prepared statements are invalidated and need to be
regenerated, sqlite3_prepare_v2() does that for us, but we need not to
rely on that to run on some older platforms (maemo bora).

Plugins now should create tables on setup() and prepare statements on
start().

16 years agoAdd functions missing in older SQLite3 versions (maemo bora uses it).
Gustavo Sverzut Barbieri [Tue, 20 Nov 2007 20:14:37 +0000 (17:14 -0300)]
Add functions missing in older SQLite3 versions (maemo bora uses it).

16 years agoJPEG parser plugin.
Gustavo Sverzut Barbieri [Sat, 17 Nov 2007 00:28:20 +0000 (21:28 -0300)]
JPEG parser plugin.

This plugin is self contained and can parse JPEG images, it's able to
get image size, comments, artist, date and more.

There are just two to-do items:
 * get GPS data.
 * check if worth using mmap() to minimize seeking while reading IFD.

16 years agoMake some errors non-fatal.
Gustavo Sverzut Barbieri [Tue, 20 Nov 2007 14:30:14 +0000 (11:30 -0300)]
Make some errors non-fatal.

If scanner failed or directory doesn't exist, just log and continue.

16 years agoDelete files that failed all parsers.
Gustavo Sverzut Barbieri [Tue, 20 Nov 2007 14:24:33 +0000 (11:24 -0300)]
Delete files that failed all parsers.

16 years agoReplace "is_valid" with "dtime" (deletion time), so we can expire them.
Gustavo Sverzut Barbieri [Tue, 20 Nov 2007 13:35:14 +0000 (10:35 -0300)]
Replace "is_valid" with "dtime" (deletion time), so we can expire them.

16 years agoSplit out db utilities from core and add image db functions.
Gustavo Sverzut Barbieri [Mon, 19 Nov 2007 23:09:20 +0000 (20:09 -0300)]
Split out db utilities from core and add image db functions.

Refactor lightmediascanner.c, move utilities to
lightmediascanner_db_common, add lightmediascanner_db_image with
functions to be used by image parsers.

16 years agoPlugins now have a start/finish call before enter the processing loop.
Gustavo Sverzut Barbieri [Mon, 19 Nov 2007 17:54:53 +0000 (14:54 -0300)]
Plugins now have a start/finish call before enter the processing loop.

16 years agoAdd lightmediascanner_utils.
Gustavo Sverzut Barbieri [Mon, 19 Nov 2007 16:41:16 +0000 (13:41 -0300)]
Add lightmediascanner_utils.

It provides:
 * lms_strstrip(): remove spaces from string begin and end, accounts length.
 * lms_which_extension(): check which of the given extension the name ends,
   returns it index.

16 years agoAdd missing empty definition for GNUC_NON_NULL() for non-GCC compilers.
Gustavo Sverzut Barbieri [Mon, 19 Nov 2007 16:32:48 +0000 (13:32 -0300)]
Add missing empty definition for GNUC_NON_NULL() for non-GCC compilers.

16 years agoBuild system improvements.
Gustavo Sverzut Barbieri [Sat, 17 Nov 2007 00:34:39 +0000 (21:34 -0300)]
Build system improvements.

16 years agoSupport configurable commit_interval.
Gustavo Sverzut Barbieri [Fri, 16 Nov 2007 20:05:35 +0000 (17:05 -0300)]
Support configurable commit_interval.

Commit interval is the number of files to be scanned in each transaction.

16 years agoSQLite3 support.
Gustavo Sverzut Barbieri [Fri, 16 Nov 2007 19:59:43 +0000 (16:59 -0300)]
SQLite3 support.

It still does just one transaction for the whole process, if one
parser fails, then the whole set of changes is lost.

16 years agoSetup things for future SQLite integration: stat, match and friends.
Gustavo Sverzut Barbieri [Fri, 16 Nov 2007 19:57:01 +0000 (16:57 -0300)]
Setup things for future SQLite integration: stat, match and friends.

Parsers now should provide match() callback to say if it will handle
parse() on that file, this enable us to register in DB files that are
in use and avoid parsing if stat() reports newer mtime.

16 years agoAdd configurable slave_timeout support.
Gustavo Sverzut Barbieri [Fri, 16 Nov 2007 19:56:26 +0000 (16:56 -0300)]
Add configurable slave_timeout support.

16 years agoInitial revision of Light Media Scanner.
Gustavo Sverzut Barbieri [Fri, 16 Nov 2007 19:54:20 +0000 (16:54 -0300)]
Initial revision of Light Media Scanner.

Provides barebones for future work, plugin support is already
included, but no SQLite3 handling is done yet.