TinyMediaManager Tiny Media Site
TMM is a tools which allows to manage a film and serie collection.
TMM is a very useful media manager, I used it with the export template : https://gitlab.com/maxburon/tinyMediaManager/-/tree/darkTemplate/templates/DarkTemplate
The documentation of the export: https://gitlab.com/tinyMediaManager/tinyMediaManager/-/wikis/Export-Templates?version_id=a5b7f15647719bdaa3a7f93a51e5aa123ccbd962
There is a forum about tinymediamanager : https://forum.kodi.tv/forumdisplay.php?fid=204
installation
Download the last build from : https://www.tinymediamanager.org/download/
mkdir ~/.tinymediamanager
cd ~/.tinymediamanager/
wget https://release.tinymediamanager.org/v3/dist/tmm_3.1.8_linux.tar.gz
tar -xvf tmm_3.1.8_linux.tar.gz
cp -r /ssh:bcdp:~/tinyMediaManager/build/data .
rm data/*.db
tinyMediaSite
Tiny media site is a web site representing a movie and tvshow collection. It retrieves meta data of the medias using the NFO files present in the collection directories. Tiny media site have been design to work well with tinyMediaManager. It is based on the framework Sapper.
Features
Movie
- an index page containing all the movies
- RSS feed for the latest movies
- searching movie by title
- one page per movie with directors, genres, actors and download links
- one page per director, actor, genre and tag containing the related movies
- an index page of the movie tags
Tv Show
- an index page containing all the tv shows
- one page per tv show containing all the episodes per season
- one m3u file per tv show seasons
Installation
It requires that nodejs
and npm
are installed. Then, you can install the dependencies using:
npm install
Usage
Configuration
Copy .env.source
to .env
and fill it with your values.
Data gathering
You can gather the metadata by generating the data/tvshows.json
and data/movies.json
JSON files, using:
node scripts/gatherData.js
Run the server
npm run build npm run start
Export
Sapper supports static export of the website outputted in __sapper__/export
using:
# movies.json is not reach during the crawl, but it is used at client side for text search npm run export --entry "/movies.json"
todo dev
TODO réduire la taille des posters
en utilisant la commande suivante, on peut espérer un facteur de réduction entre 5 et 10:
convert -resize 256x -sampling-factor 4:2:0 -strip -quality 75 -interlace JPEG -colorspace sRGB poster.jpg poster.min.jpg
Generate JSON movie files (old)
This is the way, I used to retrieve the json document data/movies.json
from the NFO files. This is a nice usage example of jq
and xml2json
tools.
DIRS="/mnt/super8/films /mnt/pellicule/videos/films" TMP="data/movies.tmp.json" OUTPUT="data/movies.json" > $OUTPUT for dir in $DIRS; do > $TMP for f in $dir/*/*.nfo; do echo $f; xml2json -t xml2json "$f" --pretty --strip_text >> $TMP; done; jq -s --arg dir $dir '.[].movie| . + {directory: $dir}' $TMP >> $OUTPUT done; cp $OUTPUT $TMP jq -s '.' $TMP > $OUTPUT
Dark Template
It is the ancestor of tinyMediaSite, a TinyMediaManager template to export your collection as a static website. The source code is available on gitlab: https://gitlab.com/maxburon/tinyMediaManager/-/tree/devel/templates/DarkTemplate