云转码切片管理平台Linux版本

云转码切片管理平台介绍
实现大文件分块上传,批量上传。
实现服务器端自动动态码率转码并且切片,完成后会自动删除原视频文件。
实现批量添加水印和字幕,和同时处理。
实现截图,默认自动生成四张截图。
一键获取分享链接,设置防盗链,token防盗链或者仅允许指定域名iframe调用。
开源源码:云转码平台

为什么要使用转码切片
传统视频如果没有正确的压缩,一般来说尺寸非常大,动则3Gb4Gb的大小,再者因为视频需要在网站中进行播放,传统中如果放置常规的flv或者mp4格式,那么浏览器会一直进行缓存,并且在缓存在一定播放长度之后才会进行播放,这样会消耗更多的带宽和让用户等待更长的时间,所以转码之后再进行切片是非常必须的,一来无损的压缩视频文件使其占用磁盘尺寸更小,并且基于hls格式,也是M3u8格式中储存了所有ts切片列表,这种模式加载,只需要加载第一个ts切片视频就可以开始播放,这样就使用户等待的时间更少,减少服务器带宽使用,并且画质的损失很小。这也就是为什么现在大部分视频网站都是使用hls格式来播放的。

安装说明
推荐环境ubuntu16.04,已经稳定运行并且提供服务多月。

一、安装ffmpeg(ubuntu16.04)

sudo add-apt-repository ppa:djcj/hybrid
sudo apt-get update
sudo apt-get install ffmpeg

二、安装nodejs,expressjs,mongodb,pm2,nginx
这个篇幅过长,详情见:express+nodejs+redis+mongodb+pm2+nginx环境部署安装,生产环境及开发环境部署

三、创建/config文件夹并在里边创建auth.js文件
代码如下:

module.exports = {
user: "username",
password: "password",
db: "dbname",
dbuser: "dbuser",
dbpassword: "dbpassword"
};

四、开启应用
进入应用文件夹,运行pm2 start ./bin/www -i 0
上边的-i 0的意思是以集群方式启动,根据当前服务器cpu线程数自动生成多线程共用一个端口。

五、增加中文字体
ffmpeg烧录字幕的时候会查找字体配置文件,/etc/fonts,如果里边没有fonts.conf,请将本源码中fonts.conf上传到/etc/fonts,有些linux系统没有中文字体支持,请将msyh.ttf上传至/usr/share/fonts里边。

软件开发框架介绍
nodejs v8.7.0版本
expressjs 4.16.0版本
mongoDb 3.6版本
ffmpeg 3.4.1版本
使用说明
创建/config文件夹并在里边创建auth.js文件 代码如下:

module.exports = {
user: "username",
password: "password",
db: "dbname",
dbuser: "dbuser",
dbpassword: "dbpassword"
};

登陆后台之后请立刻在设置中进行设置。
上传视频即可上传视频。
转码页面一键转码。
支持后台字幕上传,名称与视频名一致,则系统会自动烧录字幕。例如:aaa.mp4,则srt字幕名为aaa.srt。(注意需要把srt文件转换成utf8格式)
支持一键入库,利用ftp等工具将视频上传至movies文件夹,后台可以一键入库,进行转码切片操作。
秒切功能,开启之后,无需进行转码的视频会直接切片。(后台可设置)
推荐手机和电脑都使用谷歌浏览器,手机上只有谷歌浏览器或者火狐浏览器才会加载vtt格式的外嵌字幕。
版本更新
v3版本
更改播放器为Dplayer播放。
增加VTT字幕支持,后台可以给视频分别上传vtt字幕,前台播放会自动加载。
增加一个webtorrent功能(测试玩)。

v2版本:
增加批量烧录字幕功能,支持srt字幕,改成和视频名一样,系统在转码的时候会自动把字幕烧录进去。如果存在srt字幕文件,则对应电影无论是否设置秒切都会进行转码。
增加批量入库功能,利用ftp或者其他工具将视频传至movies文件夹,在后台即可一键入库。
增加秒切功能,后台设置开启,即视频如果小于设置的分辨率并且编码为h264则会跳过转码直接切片。
增加自动生成截图功能,默认4张截图,路径yourdomain/videos/:id/(1|2|3|4).jpg。

v1版本:
批量上传视频,大文件切片上传。
批量转码并切片。
设置防盗链和分辨率,添加水印,一气呵成。

截图


quazero-express-ffmpeg-master
shell一键安装

wget https://raw.githubusercontent.com/bookyo/express-ffmpeg/master/install.sh
chmod +x install.sh
./install.sh

文章来源:https://moejj.com/yun-zhuan-ma-qie-pian/

点赞