Commit d4093e9eb17e460fe9c4cfc6109b10a63ec8796e
1 parent
30c94601
Add some first video backup helper
Showing
1 changed file
with
90 additions
and
0 deletions
video.sh
0 → 100644
1 | +function dvdinfo() { | |
2 | + local TRACK="${1:-1,-1,1}" | |
3 | + tccat -i /dev/cdrom -T "${TRACK}" |ffprobe -i - | |
4 | +} | |
5 | + | |
6 | +function dvdrip() { | |
7 | + local OPT OPTARG OPTIND | |
8 | + local OPTEND=0 | |
9 | + | |
10 | + local TRACK="1,-1,1" | |
11 | + local PRESET="veryslow" | |
12 | + local TUNE="film" | |
13 | + local OUTFILE="/home/ghopp/data/dvdrip.mp4" | |
14 | + | |
15 | + local USAGE="$(cat <<-EOT | |
16 | + Usage: $0 [-T track] [-p preset] [-t tune] [-o outfile] [MAP]... | |
17 | + EOT | |
18 | + )" | |
19 | + | |
20 | + while getopts T:p:t:o:h- OPT | |
21 | + do | |
22 | + case $OPT in | |
23 | + T) TRACK="${OPTARG:-${TRACK}}";; | |
24 | + p) PRESET="${OPTARG:-${PRESET}}";; | |
25 | + t) TUNE="${OPTARG:-${TUNE}}";; | |
26 | + o) OUTFILE="${OPTARG:-${OUTFILE}}";; | |
27 | + -) OPTEND=1;; | |
28 | + h) echo ${USAGE} && return 0;; | |
29 | + ?) echo ${USAGE} && return 1;; | |
30 | + esac | |
31 | + [[ $OPTEND -eq 1 ]] && break | |
32 | + done | |
33 | + shift $((OPTIND - 1)) | |
34 | + | |
35 | + tccat -i /dev/cdrom -T "${TRACK}" |\ | |
36 | + ffmpeg -i - -map "${*// / -map }" -c:v libx264 -vf format=yuv420p \ | |
37 | + -preset ${PRESET} -tune ${TUNE} -c:a mp3 -ac 1 ${OUTFILE} | |
38 | +} | |
39 | + | |
40 | +function filmrip() { | |
41 | + local OPT OPTARG OPTIND | |
42 | + local OPTEND=0 | |
43 | + | |
44 | + local USAGE="$(cat <<-EOT | |
45 | + Usage: $0 [-T track] [-o outfile] [MAP]... | |
46 | + EOT | |
47 | + )" | |
48 | + | |
49 | + while getopts T:p:t:o:h- OPT | |
50 | + do | |
51 | + case $OPT in | |
52 | + T) TRACK="${OPTARG}";; | |
53 | + o) OUTFILE="${OPTARG}";; | |
54 | + -) OPTEND=1;; | |
55 | + h) echo ${USAGE} && return 0;; | |
56 | + ?) echo ${USAGE} && return 1;; | |
57 | + esac | |
58 | + [[ $OPTEND -eq 1 ]] && break | |
59 | + done | |
60 | + shift $((OPTIND - 1)) | |
61 | + | |
62 | + dvdrip -T "${TRACK}" -o "${OUTFILE}" $@ | |
63 | +} | |
64 | + | |
65 | +function animationrip() { | |
66 | + local OPT OPTARG OPTIND | |
67 | + local OPTEND=0 | |
68 | + | |
69 | + local USAGE="$(cat <<-EOT | |
70 | + Usage: $0 [-T track] [-o outfile] [MAP]... | |
71 | + EOT | |
72 | + )" | |
73 | + | |
74 | + while getopts T:p:t:o:h- OPT | |
75 | + do | |
76 | + case $OPT in | |
77 | + T) TRACK="${OPTARG}";; | |
78 | + o) OUTFILE="${OPTARG}";; | |
79 | + -) OPTEND=1;; | |
80 | + h) echo ${USAGE} && return 0;; | |
81 | + ?) echo ${USAGE} && return 1;; | |
82 | + esac | |
83 | + [[ $OPTEND -eq 1 ]] && break | |
84 | + done | |
85 | + shift $((OPTIND - 1)) | |
86 | + | |
87 | + dvdrip -T "${TRACK}" -o "${OUTFILE}" -t animation $@ | |
88 | +} | |
89 | + | |
90 | +# vim: set ts=4 sw=4: | ... | ... |
Please
register
or
login
to post a comment