4
by gpupo
utbload added |
1 |
#!/bin/bash
|
2 |
#
|
|
3 |
# utbload
|
|
4 |
# author: Gilmar Pupo <g@g1mr.com>
|
|
6
by gpupo
vimeo support |
5 |
#
|
4
by gpupo
utbload added |
6 |
# Install:
|
6
by gpupo
vimeo support |
7 |
# 1) sudo apt-get install mencoder youtube-dl wget
|
4
by gpupo
utbload added |
8 |
# 2) save this file on /usr/bin/utbload ( sudo cp utbload /usr/bin/ )
|
6
by gpupo
vimeo support |
9 |
#
|
4
by gpupo
utbload added |
10 |
# Usage: utbload "video_url" filename
|
11 |
# Example: utbload "http://www.youtube.com/watch?v=9kQcYENQW_A" MyVideo
|
|
6
by gpupo
vimeo support |
12 |
# See your videos in ~/Videos/utbload folder
|
4
by gpupo
utbload added |
13 |
# More info: http://gpupo.com/youtube-para-avi-no-ubuntu
|
6
by gpupo
vimeo support |
14 |
#
|
15 |
# Changelog:
|
|
16 |
# 15/09/2010 - vimeo function added
|
|
17 |
||
5
by gpupo
utbload fixed |
18 |
source ${HOME}/.config/user-dirs.dirs |
4
by gpupo
utbload added |
19 |
usage()
|
20 |
{
|
|
21 |
echo
|
|
22 |
echo USAGE:
|
|
23 |
echo 'utbload "video_url" filename'; |
|
24 |
echo
|
|
25 |
echo 'Example:' |
|
26 |
echo 'utbload "http://www.youtube.com/watch?v=9kQcYENQW_A" MyVideo' |
|
6
by gpupo
vimeo support |
27 |
echo ' or' |
28 |
echo 'utbload "http://www.vimeo.com/2373142" MyVideo' |
|
4
by gpupo
utbload added |
29 |
echo
|
30 |
}
|
|
6
by gpupo
vimeo support |
31 |
displayMode()
|
32 |
{
|
|
33 |
echo "====== ${1} ======" |
|
34 |
}
|
|
4
by gpupo
utbload added |
35 |
if [ -z $2 ]; then |
36 |
echo
|
|
37 |
echo "ERROR: missing parameter 2." |
|
38 |
usage |
|
39 |
exit 1 |
|
40 |
fi
|
|
7
by gpupo
bug on vimeo url solved |
41 |
URL=$1; |
6
by gpupo
vimeo support |
42 |
DIR_UTBLOAD=${XDG_VIDEOS_DIR}/utbload |
43 |
mkdir -p ${DIR_UTBLOAD} |
|
44 |
FILE="${DIR_UTBLOAD}/${2}.flv" |
|
45 |
||
46 |
||
9
by gpupo
added: |
47 |
case "$URL" in |
6
by gpupo
vimeo support |
48 |
*youtube*)
|
49 |
displayMode youtube |
|
50 |
youtube-dl -m --no-overwrites -o $FILE $1; |
|
51 |
;;
|
|
52 |
*vimeo*)
|
|
53 |
displayMode vimeo |
|
8
by gpupo
append |
54 |
VIMEO_SITE='http://vimeo.com/' |
55 |
VIMEO_ID=${URL//www./} |
|
56 |
VIMEO_ID=${VIMEO_ID//${VIMEO_SITE}/} |
|
6
by gpupo
vimeo support |
57 |
GET_CMD="wget -O -" |
58 |
VIDEO_XML=`${GET_CMD} http://www.vimeo.com/moogaloop/load/clip:${VIMEO_ID}` |
|
59 |
REQUEST_SIGNATURE=`echo $VIDEO_XML | sed -e 's/^.*<request_signature>\([^<]*\)<.*$/\1/g'` |
|
60 |
REQUEST_SIGNATURE_EXPIRES=`echo $VIDEO_XML | sed -e 's/^.*<request_signature_expires>\([^<]*\)<.*$/\1/g'` |
|
61 |
${GET_CMD} "http://www.vimeo.com/moogaloop/play/clip:${VIMEO_ID}/${REQUEST_SIGNATURE}/${REQUEST_SIGNATURE_EXPIRES}/?q=sd" > $FILE |
|
62 |
;;
|
|
63 |
esac
|
|
64 |
||
4
by gpupo
utbload added |
65 |
if [ -f $FILE ]; then |
6
by gpupo
vimeo support |
66 |
|
67 |
if [ $3 == 'iphone' ]; then |
|
68 |
OUT="${DIR_UTBLOAD}/${2}.mp4" |
|
69 |
mencoder "$FILE" -o "$OUT" \ |
|
70 |
-vf dsize=480:352:2,scale=-8:-8,harddup \ |
|
71 |
-oac faac -faacopts mpeg=4:object=2:raw:br=128 \ |
|
72 |
-of lavf -lavfopts format=mp4 -ovc x264 -sws 9 \ |
|
73 |
-x264encopts nocabac:level_idc=30:bframes=0:bitrate=512:threads=auto:turbo=1:global_header:threads=auto:subq=5:frameref=6:partitions=all:trellis=1:chroma_me:me=umh |
|
74 |
||
75 |
else
|
|
76 |
OUT="${DIR_UTBLOAD}/${2}.avi" |
|
77 |
mencoder "$FILE" -ovc lavc -oac mp3lame -lameopts cbr:br=128 -ffourcc XVID -vf scale=320:240 -o "$OUT" |
|
78 |
fi
|
|
4
by gpupo
utbload added |
79 |
rm $FILE; |
80 |
exit 0; |
|
81 |
else
|
|
82 |
echo "ERROR: I can't download!!!!" |
|
83 |
exit 1; |
|
84 |
fi
|