#!/bin/bash function usage() { if [[ "$*" ]]; then echo "$*" >&2 fi cat >&2 <&2 exit 1 } ####################################################################### left=0 right=0 remove_audio=0 mpeg= while [[ "$1" ]] do case "$1" in --left) left=1 right=0 shift ;; --right) left=0 right=1 shift ;; --remove-audio) remove_audio=1 shift ;; -*) usage "Unrecognized option $1" ;; *) if [[ "$mpeg" ]]; then usage "Unexpected argument: $1"; fi mpeg=$1 shift mext="${mpeg#*.}" if [[ "$mext" != 'mpeg' ]]; then error "Invalid mpeg file: $mpeg"; fi ;; esac done if [[ ! "$mpeg" ]]; then usage; fi geometry=$(file $mpeg | grep -P -o '\d+ x \d+' | tr -d ' ') if [[ $left -eq 1 ]]; then logo=logo-left-$geometry.jpg elif [[ $right -eq 1 ]]; then logo=logo-right-$geometry.jpg else error "Specify one of --left or --right" fi if [[ ! -f $logo ]]; then error "Logo file not found: $logo"; fi if [[ $remove_audio -ne 0 ]]; then opts='-an'; fi mp4=$(basename $mpeg .mpeg).mp4 ogv=$(basename $mpeg .mpeg).ogv rm -f $mp4 $ogv ffmpeg -sameq $opts -i $mpeg -vhook "/usr/lib64/vhook/watermark.so -f $logo" $mp4 ffmpeg -sameq $opts -i $mp4 $ogv # vim: tabstop=4: shiftwidth=4: noexpandtab: # kate: tab-width 4; indent-width 4; replace-tabs false;