这是一个免费的 HLS 视频解决方案,即所谓的视频床。本项目提供一整套集成化解决方案,囊括了各环节所需的切片、转码、上传、即时分享等套件。让你可以以更方便、更低廉的方式分享你的视频到任意地方。
视频是传到阿里服务器的,不需要你任何流量,也不需要你买带宽,完全免费。
功能
- 客户端:切片、转码、上传。可以在任意机器上使用,使用前要先配置
.env
; - 服务端:即时分享套件,主要是给上面客户端提供 API、在线播放支持的,能够更方便分享视频。需要在服务器搭建;
下载
开源地址: https://github.com/sxyazi/free-hls
搭建教程
视频教程:https://sxyz.gitee.io/free-hls/usage.html
客户端
客户端,即 up.py
入口,提供对上传视频资源的切片、转码、上传的支持。可以在你的任意机器上使用,只要你安装了必要的依赖项和作出了正确的配置。
1. 安装依赖
安装最新的 Python3,以及必要包:
apt install -y ffmpeg python3 python3-pip
pip3 install shellescape python-dotenv
2. 配置语雀
将 .env.example
更名为 .env
,修改其中的 YUQUE_CTOKEN
、YUQUE_SESSION
配置。操作步骤:
- 登录语雀 yuque.com;
- 打开 Chrome 的开发者工具(Command+Shift+I),切换到 Network 面板;
- 刷新页面,从 Cookie 中抓取
ctoken
、_yuque_session
,复制并替换到.env
文件中;
3. 配置服务
正确施行 服务端 一节的全部内容,完成服务端的搭建。将你服务器的域名或 IP 地址修改到 .env
中的 APIURL
配置项。
4. 开始使用
准备好目标视频文件,输入如下指令开始切片、上传:
python3 up.py test.mp4 #默认标题 python3 up.py test.mp4 测试哦 #自定义标题 python3 up.py test.mp4 test 5 #自定义分段大小 python3 up.py test.mp4 test LIMITED #限制码率(需重编码)
服务端
服务端位于项目的 web
目录,负责向客户端提供视频发布所必要的 API 接口。以及最终目标视频的播放服务。
1. 安装依赖
安装最新的 Python3,以及必要包:
apt install -y python3 python3-pip pip3 install Flask gunicorn
2. 启动服务
cd web gunicorn app:app -b 0.0.0.0:3395 -D