目的
使用压缩工具,缩小视频占用体积。
播放软件
完美者解码 //可以硬解hevc视频
视频压缩软件
小丸工具箱 //用于将视频压缩成h.264格式
staxrip //用于将视频压缩成h.265格式,github地址https://github.com/stax76/staxrip
可以调用cpu(最大化的调用cpu的资源)或显卡(新显卡的速度飞快,秒转)进行压制。
压缩方法
小丸工具箱直接使用默认压缩就行。
staxrip可以配置一下h.265的压缩参数。
使用压缩工具,缩小视频占用体积。
完美者解码 //可以硬解hevc视频
小丸工具箱 //用于将视频压缩成h.264格式
staxrip //用于将视频压缩成h.265格式,github地址https://github.com/stax76/staxrip
可以调用cpu(最大化的调用cpu的资源)或显卡(新显卡的速度飞快,秒转)进行压制。
小丸工具箱直接使用默认压缩就行。
staxrip可以配置一下h.265的压缩参数。
tags:youtube-dl,youtube,vps,搬瓦工,shadowsocks,dropbox,ifttt
youtube上有很多国外的最新技术的视频,而且有1080p和4k的高清视频,由于肉身在中国大陆,有观看和保存视频的需求,下载下来,无缓冲的看视频很舒服。
原理:
通过位于国外的一台vps作为中转站,把国外的资料同步到国内
步骤:获取url、下载视频、同步到国内
单视频的格式为"https://www.youtube.com/watch?v="后面加"视频id"例如:https://www.youtube.com/watch?v=oTt_O6T8FAU
不要复制"&list"及以后的文字
而我们需要的就是这个"视频id"
dropbox上的根目录下新建ifttt目录
创建youtube目录,存放vps上传的视频及字幕文件
创建youtube-dl目录,存放待下载的视频信息txt
创建youtube-part目录,存档已下载过的视频信息
pc上使用dropbox,在国内需要配合ss使用。在dropbox的根目录下的/ifttt/youtube-dl文件夹下新建一个以视频名称为文件名的txt文件,把url粘贴进去
涉及到dropbox操作,还是先更换 Linux VPS 时区为北京时间,参考国外VPS修改系统时间为北京时间
date #先用date命令查看下当前时间
rm -rf /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date #查看是否更换为北京时间,大部分linux vps的母机是允许每个vps修改时间的
参考CentOS使用脚本自动备份VPS数据到Dropbox配置dropbox_uploader
sh /root/dp/dropbox_uploader.sh download /ifttt/youtube-dl /root/dp/ #下载txt文件到vps
vps上创建/root/dp/目录 chmod 777 给予权限,下同
创建youtube目录,存放youtube-dl下载的视频及字幕文件
创建youtube-dl目录,存放待下载的视频信息txt
创建youtube-part目录,存档已下载过的视频信息
先去http://rg3.github.io/youtube-dl/下载youtube-dl
再使用脚本自动查看txt内的url并下载视频
QUEUE_DIR为/root/dp/youtube-dl/*.txt
VIDEO_DIR为/root/dp/youtube/
video_url=`cat "$queue_file"`;
echo "$queue_file : $video_url";
mv "$queue_file" "${queue_file}.part";
youtube-dl --skip-download --write-auto-sub --sub-format srt -q -o "$VIDEO_DIR%(title)s-%(id)s.srt" "$video_url";
youtube-dl -q -o "$VIDEO_DIR%(title)s-%(id)s.en.%(ext)s" "$video_url";
文件命名,这样设置是为了保证视频和字幕文件名相同
注意:先在pc上设置dropbox不自动同步/ifttt/youtube目录,以免视频自动下载到pc,从而产生非常大的数据流量
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
sh /root/dp/dropbox_uploader.sh download /ifttt/youtube-dl /root/dp/ #同步包含url的txt文件
sh /root/dp/dropbox_youtube_dl.sh #下载视频和字幕
cp /root/dp/youtube-dl/*.part /root/dp/youtube-part/ #已下载过的视频信息存档
#sh /root/dp/dropbox_uploader.sh upload /root/dp/youtube /ifttt/ #上传视频和字幕到dropbox
convmv -f GBK -t UTF-8 -r *
convmv -f GBK -t UTF-8 --notest -r *
cd /root/dp/youtube
bypy upload -v
bypy upload
#sh /root/dp/dropbox_uploader.sh upload /root/dp/youtube /ifttt/ #上传视频和字幕到dropbox
rm -rf /root/dp/youtube/* #删除vps上的视频和字幕
rm -rf /root/dp/youtube-dl/* #删除temp文件
sh /root/dp/dropbox_uploader.sh delete /ifttt/youtube-dl/ #删除dropbox上的已下载视频的txt
sh /root/dp/dropbox_uploader.sh upload /root/dp/youtube-dl /ifttt/ #重建youtube-dl目录
再使用crontab设置定时执行就行了,这样从youtube上添加视频到“稍后阅读”后,等一段时间就自动下载到百度云的应用数据文件夹了,再手动移动到别的文件夹。
1080p及以上的视频和音频确实是分离了,要想下载最高品质的视频就需要下载其视频和音频进行合并,参考使用youtube-dl下载YouTube视频
cd /root/dropbox_uploader/youtube #进入想要保存视频的目录
youtube-dl -F URL #获取所有格式(目前仅支持YouTube),例如:youtube-dl -F http://www.youtube.com/watch?v=n-BXNXvTvV4
youtube-dl -f format URL #下载指定格式的视频,这里以下载1080p原画质量的视频格式为例:youtube-dl -f 137 http://www.youtube.com/watch?v=n-BXNXvTvV4
youtube-dl -f format URL #下载指定格式的视频的音频,这里以下载aac @256k (44100Hz)的音频为例:youtube-dl -f 141 http://www.youtube.com/watch?v=n-BXNXvTvV4
youtube-dl --skip-download --write-auto-sub URL #下载自动字幕
My Mp4Box Gui
合并工具:My Mp4Box Gui
下载地址:sina下载
我直接使用安装版的成功,绿色版的无法合并,不知道原因
使用方法:参考合併Youtube MP4+M4A
vps下载后自动合并
vps内存512m及以上可以尝试,参考VPS 教程系列:Ubuntu 14.04 安装 ffmpeg 并使用 youtube-dl 下载 1080p 高清视频
登录multcloud官网,注册一下
添加云盘:dropbox和百度云
点击传输,设定为
from dropbox/ifttt/youtube
to 百度云盘我的应用数据lin1118
可设置为传输成功后发送邮件提醒
写个脚本,可以每天备份一次,最好是能检测一下,若有新的文件更新,则打包上传到dropbox
#!/bin/bash
mkdir /tmp/backup
SCRIPT_DIR="/root/dp"
DROPBOX_DIR="/ifttt/youtube-part"
BACKUP_SRC="/root/dp/youtube-part"
BACKUP_DST="/tmp/backup"
DESTFILE="$BACKUP_DST/youtube-part.tar.gz"
tar cfz "$DESTFILE" $BACKUP_SRC
sh /root/dp/dropbox_uploader.sh upload /tmp/backup/ /ifttt/youtube-part/
rm -rf /tmp/backup/*