结合OSS视频文件 实现ECS下的RTMP视频直播
视频直播推流的推流源,可采用来自终端采集的视频流。在试验中也可采用存放与OSS中的文件作为推流源,实现直播推流。
当视频存放于OSS中,要用ffmpeg进行推流,需先将oss文件路径挂载到本地,再进行推流。
OSSFS-Fuse是实现将阿里云OSS bucket挂载成为阿里云ECS服务器本地盘功能的工具,方便阿里云用户快捷地使用OSS。
安装OSSFS-Fuse
1. 安装依赖组件:
CentOS 7:
sudo yum install automake fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel
Ubuntu 14.04 (64bit):
sudo apt-get update
sudo apt-get install automake autotools-dev g++ git libcurl4-gnutls-dev libfuse-dev libssl-dev libxml2-dev make pkg-config
2. 下载ossfs代码到ECS机器 :
下载软件包,目前可以通过github下载到ossfs-fuse软件
下载命令:git clone h t t p s://github.com/ossfs-fuse/ossfs-fuse.git
3. 修改配置文件
(1)首先进入ossfs-fuse项目目录,内容如下:
修改配置文件:
ossfs-fuse的配置文件为ossfs.json,格式为:
{
"bucket_name" : "***",
"access_id" : "***",
"access_key" : "***",
"mount_dir" : "/mnt/***",
"region_url" : "http://***.aliyuncs.com"
}
(配置文件参数解释)
4. 进入ossfs-fuse项目目录,执行命令:./ossfs.py start
备注:如果是刚下载来的代码,这个步骤中会自动进行./configure、make等工作,大概耗时30秒左右。如果在这个项目目录曾经启动过ossfs-fuse,不是第一次启动且环境未被破坏,大概耗时2秒左右。
启动成功会有提示,例如:
如上显示,您的bucket已经被挂在到您指定的目录mount_dir上,这些都是您在ossfs.json指定的。
进入ossfs-fuse项目目录,执行命令:./ossfs.py restart
备注:该步骤大概耗时2秒左右。
相应可执行 ./ossfs.py stop 来停止OSSFS-Fuse。
OSSFS-Fuse 安装完成后, 在相应bucket内上传新的视频文件 football8.flv。
在相应的ECS系统挂载点下即可看到与OSSbucket 相同的文件
利用ffmpeg,对通过OSSFS-Fuse挂载的football8.flv进行直播推流
在终端(VLC)URL中输入直播地址,即可读取视频直播流。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。