Skip to content

Instantly share code, notes, and snippets.

@deckerego
Created December 6, 2013 22:13
Show Gist options
  • Save deckerego/7833050 to your computer and use it in GitHub Desktop.
Save deckerego/7833050 to your computer and use it in GitHub Desktop.
Look up a recorded show on your MythTV box, copy it locally then transcode it to properly play on a 5G iPod.
#!/bin/sh
BASEDIR=/video
EXPORTDIR=~/Desktop
DB_SERVER=mythbox
DATABASE=mythconverg
USER=mythtv
PASS=mythpassword
SHOWNAME="$1"
DATE="$2"
if [[ -z "$SHOWNAME" ]]; then
echo "Usage: $0 SHOWNAME"
exit -1
fi
if [[ -z "$DATE" ]]; then
DATE='2000-01-01 00:00:00'
fi
FILE_QUERY="select basename from recorded where title like '$SHOWNAME%' and starttime > '$DATE';"
DESCRIPTION_QUERY="select description from recorded where basename="
TIME_QUERY="select starttime from recorded where basename="
SUBTITLE_QUERY="select subtitle from recorded where basename="
FILE_LIST=`echo "$FILE_QUERY" | mysql -N -h "$DB_SERVER" -D "$DATABASE" -u "$USER" -p$PASS`
IFS="
"
for FILE in $FILE_LIST; do
DESCRIPTION=`echo "$DESCRIPTION_QUERY'$FILE'" | mysql -N -h "$DB_SERVER" -D "$DATABASE" -u "$USER" -p$PASS`
START_TIME=`echo "$TIME_QUERY'$FILE'" | mysql -N -h "$DB_SERVER" -D "$DATABASE" -u "$USER" -p$PASS`
SUBTITLE=`echo "$SUBTITLE_QUERY'$FILE'" | mysql -N -h "$DB_SERVER" -D "$DATABASE" -u "$USER" -p$PASS`
SOURCE_FILE="$BASEDIR/$FILE"
DEST_FILE="$EXPORTDIR/$FILE"
if [[ -z "$SUBTITLE" ]]; then
TITLE="$SHOWNAME $START_TIME"
else
TITLE="$SUBTITLE"
fi
echo "Copying $SOURCE_FILE"
/opt/kde3/bin/kfmclient copy "$SOURCE_FILE" "$DEST_FILE"
mkdir -p "$EXPORTDIR/$SHOWNAME"
ffmpeg -i "$DEST_FILE" -title "$TITLE" -author "$SHOWNAME" -album "$SHOWNAME" -comment "$DESCRIPTION" -vcodec libxvid -b 307200 -qmin 3 -qmax 5 -bufsize 4096 -g 300 -acodec libfaac -ab 98304 -s 320x240 -aspect 4:3 "$EXPORTDIR/$SHOWNAME/$TITLE.mp4"
rm "$DEST_FILE"
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment