Free-HLS是一个免费的 HLS 视频解决方案,即所谓的视频床。该项目提供一整套集成化解决方案,囊括了各环节所需的切片、转码、上传、即时分享等套件。让你可以以更方便、更低廉的方式分享你的视频到任意地方。
这个项目需要搭建服务端和客户端,当然你可以都放到一起。这篇教程就来说说如何利用宝塔面板来搭建一个自己的视频床。
具体的安装额部署
1、前言
github:https://github.com/sxyazi/free-hls
视频教程:https://sxyz.gitee.io/free-hls/usage.html
2、准备
大鸟这里就把服务端和客户端都放在服务器上了。我们需要准备的东西如下。
- 宝塔面板(你也可以用别的环境,这个随意)
- 安装python项目管理器(软件商店里安装)
- 可以准备一个域名(用做饭袋)
- 新建一个网站备用
3、配置python3
宝塔面板默认的python版本是python2,但是这个教程是需要python3来部署的,如何解决呢?大鸟这里提供一个思路。
3.1》首先安装python项目管理器,这个自己在软件商店里自行安装。
3.2》版本管理中安装python3.7.2。
3.3》随便添加一个项目
随便添加一个项目,项目添加好后,宝塔会给我们生成一个虚拟环境这个虚拟环境默认就是python3的环境,所以问题就解决了。比如说我们就添加free-hls这个项目。先进入命令模式git项目,如下:
git clone https://github.com/sxyazi/free-hls.git
之后,我们进入到python项目管理新建一个项目,具体如图:
3.4》进入虚拟环境安装
项目建立之后,会给我们生成一个虚拟环境,进入方法如下,在命令行输入 :
source 项目路径/项目名_venv/bin/activate 如:source /data/python/project1_venv/bin/activate
比如大鸟这个案列进入方法:
source /www/wwwroot/ee.daniao.org/OneList/666666_venv/bin/activate
截图:
这样就解决了python的版本问题,而且还是一个单独的虚拟环境,折腾坏了也不影响啥。
4、搭建服务端
4.1 安装依赖
这里命令输入是接着上面,你需要进入到python3的虚拟环境里面执行(这里的命令是centos7系统。)!!!
yum install -y python3 python3-pip yum install Flask gunicorn python-dotenv
4.2 启动服务
继续执行命令,如下:
cd web gunicorn app:app -b 0.0.0.0:3395 --workers=5 --threads=2 -D
4.3 效果截图
当看到“hello,world”表示客户端已经搭建成功。
5、注册语雀
先前往语雀官网注册一个账号,然后获取ctoken
和session
的值,这里说下大概获取方法,以谷歌浏览器为例。
登录后,F12
进入控制台选择Network
,点击dashboard
,再选择Cookies
即可看到所需要的2
个参数。
复制下来保存到记事本中备用。
6、搭建服务端
服务端可以在自己电脑上,也可以在服务器上,这就以服务器搭建为列。
6.1 安装依赖
依赖包括ffmpeg、python3、python-dotenv,因为在上面我们已经安装过了依赖,唯一的ffmpeg没有安装,这里说下宝塔安装ffmpeg的方法,如下:
6.2 配置语雀
将 .env.example
更名为 .env
,修改其中的 YUQUE_CTOKEN
、YUQUE_SESSION
配置。操作步骤:
- 登录语雀;
- 打开 Chrome 的开发者工具(F12),切换到 Network 面板;
- 刷新页面,从 Cookie 中抓取
ctoken
、_yuque_session
,复制并替换到.env
文件中; - 将你服务器的域名或 IP 地址修改到
.env
中的APIURL
配置项。
具体如下:
7、如何使用
上述的工作都完成之后,我们现在就开始使用。准备好目标视频文件,输入如下指令开始切片、上传:
python3 up.py test.mp4 #默认标题 python3 up.py test.mp4 测试哦 #自定义标题 python3 up.py test.mp4 test 5 #自定义分段大小 python3 up.py test.mp4 test LIMITED #限制码率(需重编码) python3 ls.py #列出已上传视频 python3 ls.py 3 #列出已上传视频(第3页,50每页)
使用截图:
成功之后,显示的地址如下:
打开生成的播放地址,就可以播放视频了。
8、配置域名
如果你要配置域名,那么在你新建网站之后,在网站设置中找到“方向袋里”具体设置如图:
效果截图:
9、最后
推荐在自己的电脑上设置服务器,不然长时间压缩切片造成服务器资源占用太高,会被服务商关机。
你要切片视频的话你得上传一个视频到你的服务器,或者自己从别地方download一个过来。
注意:目前语雀默认免费10G,具体可参考官方说明。
相似服务:
- https://github.com/sxzz/free-hls.js
- https://github.com/sxzz/free-hls-live
- https://github.com/MoeClub/Note/tree/master/ffmpeg
1F
你可真是积极啊,大赞
B1
@ 四师兄 欢迎,沙发被你抢了!
2F
这个前两天才看到。
B1
@ 奶爸建网站笔记 这个最近有点火!
3F
是不是那个运用图床验证不严谨的bug 看到其他文章说只能5-10M的视频上传
B1
@ 三岁半 免费用户有10G的空间,每次最大上传200M,大概就这么个情况。貌似可以绕开限制!!!
4F
感谢分享了。
5F
绕过流量统计的bug被修复了,最多只能白嫖10G
B1
@ 支援 可惜了,这么好的东西!!!
6F
好东西,谢谢分享。
7F
感谢分享!!学到知识了
8F
直连M3U8 无法放在网站上的Dplayer播放器正常播放加载失败,很多M3U8解析网站也都失败……/
用本地播放软件potplayer可以正常播放
B1
@ 小伙 确实只能在本地播放。
9F
评论下
10F
感谢博主分享,确实是好文章
11F
看看···我来学习来
12F
怎么刷新 无效
13F
来看看看
14F
看全部内容啊
15F
学一学
16F
学习下,不知还能不能用雨雀
17F
你可真是积极啊,大赞
18F
失效了吧
19F
查看隐藏内容
20F
还可以用?
21F
你可真是积极啊,大赞
22F
我是匿名网友
23F
小猪发表评论
24F
学习,谢谢
25F
看下还能用吗
26F
可惜现在不能用了,有口子的都是自己在偷摸得在用。
27F
666好奇