开发者社区> 问答> 正文

基于阿里云产品的视频方案实验(五)

结合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中输入直播地址,即可读取视频直播流。







展开
收起
袖手哥 2016-02-16 15:11:49 12225 0
1 条回答
写回答
取消 提交回答
  • LT是个伪程序员
    这么好的帖子,居然没人顶起来。
    2016-06-29 01:37:01
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
超大规模性能测试的云端方案及案例分享 立即下载
超大规模性能测试的云端解决方案及案例分享 立即下载
高可用实践:从淘宝到上云的差异 立即下载