diff options
-rw-r--r-- | doc/tips/dumb_metadata_extraction_from_xbmc/git-annex-xbmc-playcount.pl.pl | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/doc/tips/dumb_metadata_extraction_from_xbmc/git-annex-xbmc-playcount.pl.pl b/doc/tips/dumb_metadata_extraction_from_xbmc/git-annex-xbmc-playcount.pl.pl new file mode 100644 index 000000000..1fa7f0baa --- /dev/null +++ b/doc/tips/dumb_metadata_extraction_from_xbmc/git-annex-xbmc-playcount.pl.pl @@ -0,0 +1,24 @@ +#! /usr/bin/perl -w + +my $dbpath="/home/video/.xbmc/userdata/Database/MyVideos75.db"; +my $prefix="/home/media/video/"; + +my @lines = `echo 'SELECT playCount, path.strPath, files.strFileName FROM movie JOIN files ON files.idFile=movie.idFile JOIN path ON path.idPath=files.idPath;' | sqlite3 $dbpath`; +for (@lines) { + my ($count, $dir, $file) = split /\|/; + chomp $file; + $dir =~ s/$prefix//; + if ($file =~ s#stack://##) { + for (split /,/, $file) { + s/$prefix//; + s/^ //; + s/ $//; + my @cmd = (qw(git annex metadata --set), "playCount=$count", $_); + system(@cmd); + } + } + else { + my @cmd = (qw(git annex metadata --set), "playCount=$count", "$dir$file"); + system(@cmd); + } +} |