Script, take 2.
This does a better job at serializing the processing of each download and also runs comskip in parallel for all downloaded files. Works fine this way on my Late-2012 MacMini, YMMV depending on your server’s horsepower.
#!/bin/bash
logger() {
echo "`date` -- ${1}" >> ~/Tablo2Go/tablo2plex.log
}
do_it() {
f=$1
logger "Start file '$f'"
fname=`echo "${f##*/}"`
fpath=`echo "${f%/*}"`
destpath=`echo "${fpath//tablo/}"`
logger "PlexComskip '$f'"
/usr/bin/python ${HOME}/PlexComskip/PlexComskip.py "$f"
passed=$?
logger "PlexComskip returned $passed"
[ $passed -eq 0 ] && mkdir -p "$destpath" && mv "$f" "$destpath" && logger "Moved '$fname' to '$destpath'"
logger "End file '$f'"
}
# download yesterdays Tablo recordings in ${HOME}/tablodvr/...
logger "Downloading yesterday's recordings"
${HOME}/Tablo2Go/tablo2go --date `date +'%Y-%m-%d'`
FILECOUNT=`find ${HOME}/tablodvr -type f -iname *.mp4 | wc -l`
logger "Downloaded ${FILECOUNT} files"
find ${HOME}/tablodvr -type f -iname *.mp4]
if [[ ! -z ${FILECOUNT} ]]
then
# PlexComskip each file and move to Plex lib
find ${HOME}/tablodvr -type f -iname *.mp4 | while read f
do
do_it "$f" &
done
fi
Here’s a small snippet of the generated log file:
Mon May 29 01:32:18 EDT 2017 -- Downloaded 0 files
Tue May 30 01:32:00 EDT 2017 -- Downloading yesterday's recordings
Tue May 30 01:41:07 EDT 2017 -- Downloaded 2 files
Tue May 30 01:41:07 EDT 2017 -- Start file '/Users/username/tablodvr/tv/Gotham/Season 03/Gotham - S03E20 - Heroes Rise: Pretty Hate Machine.mp4'
Tue May 30 01:41:07 EDT 2017 -- Start file '/Users/username/tablodvr/tv/Lucifer/Season 02/Lucifer - S02E18 - The Good, the Bad and the Crispy.mp4'
Tue May 30 01:41:07 EDT 2017 -- PlexComskip '/Users/username/tablodvr/tv/Gotham/Season 03/Gotham - S03E20 - Heroes Rise: Pretty Hate Machine.mp4'
Tue May 30 01:41:07 EDT 2017 -- PlexComskip '/Users/username/tablodvr/tv/Lucifer/Season 02/Lucifer - S02E18 - The Good, the Bad and the Crispy.mp4'
Tue May 30 01:47:01 EDT 2017 -- PlexComskip returned 0
Tue May 30 01:47:01 EDT 2017 -- Moved 'Gotham - S03E20 - Heroes Rise: Pretty Hate Machine.mp4' to '/Users/username/dvr/tv/Gotham/Season 03'
Tue May 30 01:47:01 EDT 2017 -- End file '/Users/username/tablodvr/tv/Gotham/Season 03/Gotham - S03E20 - Heroes Rise: Pretty Hate Machine.mp4'
Tue May 30 01:55:58 EDT 2017 -- PlexComskip returned 0
Tue May 30 01:55:58 EDT 2017 -- Moved 'Lucifer - S02E18 - The Good, the Bad and the Crispy.mp4' to '/Users/username/dvr/tv/Lucifer/Season 02'
Tue May 30 01:55:58 EDT 2017 -- End file '/Users/username/tablodvr/tv/Lucifer/Season 02/Lucifer - S02E18 - The Good, the Bad and the Crispy.mp4'
Wed May 31 01:32:00 EDT 2017 -- Downloading yesterday's recordings
Wed May 31 01:32:19 EDT 2017 -- Downloaded 0 files
Thu Jun 1 01:32:00 EDT 2017 -- Downloading yesterday's recordings
Thu Jun 1 01:32:19 EDT 2017 -- Downloaded 0 files
You can see the parallel processing in the timestamps in the log file.