配置FMS发布/HDS/HLS流
一.前言
安装完FMS4.5以后就有了apache2.2,由于在FMS安装目录里面,他是对外面已经安装的是没有影响的,默认情况向, FMS监听80端口接收traffic然后传递给Apache的8134端口(rootinstall/Apache2.2/conf/httpd.conf 文件中的 Listen 8134 更改),这个传递过程在高网络负载下会带来性能的问题。因此,做以下配置来解决这个问题:
1.修改rootinstall/conf/fms.ini, 将其中的ADAPTOR.HOSTPORT = :1935,80一行,改为ADAPTOR.HOSTPORT =:1935; 不让FMS监听80端口;
2.修改其中 HTTPPROXY.HOST = :8134一行,改为: HTTPPROXY.HOST =
二.Client
找一个装有摄像头的电脑用于直播视频编码端, 安装Flash Media Live Encoder 3.2到:\Program Files\Adobe\Flash Media Live Encoder 3.2目录下,打开其子目录Conf下面的config.xml文件,修改/flashmedialiveencoder_config /mbrconfig/streamsynchronization/enable节点值为true. 即:
<mbrconfig>
<streamsynchronization>
<enable>true</enable>
三.Server
1.配置FMS server在直播时使用绝对时间,打开rootinstall/applications/livepkgr/Application.xml
<Application>
<StreamManager>
<Live>
<AssumeAbsoluteTime>true</AssumeAbsoluteTime>
</Live>
</StreamManager>
</Application>
2.配置rootinstall/conf/Server.xml
<Root>
<Server>
<ResourceLimits>
<RecBuffer>
<MaxFlushTime> 1 <MaxFlushTime>
四.测试
启动上面安装的Flash Media Live Encoder 3.2,选preset Custom, 视频选H264,29.9fps,分辨率352x288,码率可选3个100, 200, 350,H264可设置每2秒一个关键帧等,选MP3做音频等。在右边的Stream to Flash Media Server的FMS URL 里面填上:rtmp://yourserverip/livepkgr,在Stream一栏填上:livestream%i?adbe-live- event=liveevent (如果上面选了MBR3个码率直播),如果只选了一个码率直播则填上:livestream?adbe-live-event=liveevent然后点开始即可发布直播。
然后在播放器中播放:
http://yourserverip:8134/hds-live/livepkgr/_definst_/liveevent/livestream.f4m (一个码率SBR直播)
或三个码率直播(MBR)的情况下输入下面三个中的一个
http://yourserverip:8134/hds-live/livepkgr/_definst_/liveevent/livestream1.f4m
http://yourserverip:8134/hds-live/livepkgr/_definst_/liveevent/livestream2.f4m
http://yourserverip:8134/hds-live/livepkgr/_definst_/liveevent/livestream3.f4m
如果在要发布HLS,相应的hds-live修改为hls-live
直播时生成的视频数据文件保存在rootinstall/applications/livepkgr/streams/_definst_/目录下
控制文件保存在rootinstall/applications/livepkgr/events/_definst_/liveevent目录下
配置FMS发布/HDS/HLS流的更多相关文章
- ffmpeg+nginx+video实现rtsp流转hls流,通过H5查看监控视频
一.FFmpeg下载:http://ffmpeg.zeranoe.com/builds/ 下载并解压FFmpeg文件夹,配置环境变量:在“Path”变量原有变量值内容上加上d:\ffmpeg\bin, ...
- EasyNVR、EasyDSS二次开发之:RTMP、HLS流在web页面进行无插件播放示例Demo代码
不管是基于EasyNVR还是EasyDSS,都是支持无插件直播,这也是未来视频直播的一个趋势.对于传统的浏览器插件播放谁用谁知道: 以上是软件自带播放展示 背景需求 对于EasyNVR和EasyDSS ...
- 【Android】 修复ijkPlayer进行m3u8 hls流播放时seek进度条拖动不准确的问题
项目中使用的播放器是ijkPlayer,发现播放切片特点的hls流(m3u8格式的视频)拖动seekBar的时候会莫名的跳转或者seek不到准确的位置,发现网友也遇到了同样的问题,ijk的开发者也说明 ...
- Win2008R2配置WebDeploy发布网站
一.配置服务器 1.安装管理服务 2.点击管理服务进行配置 二.安装WebDeploy 2.1通过离线安装包方式安装: https://www.iis.net/downloads/microsoft/ ...
- IOS(苹果手机)使用video播放HLS流,实现在内部播放及全屏播放(即非全屏和全屏播放)。
需求: 实现PC及移动端播放HLS流,并且可以自动播放,在页面内部播放及全屏播放功能. 初步:PC及安卓机使用hls.js实现hls流自动播放及全屏非全屏播放 首先使用了hls.js插件,可以实现在P ...
- ffmpeg 发布hls流
本来主要讲述如何利用ffmpeg将输入视频流通过转码的方式转成m3u8文件.如何通过http的方法将切边推送给客户端,不在本文中讲述. 输入视频流可以是rtsp流,也可以是http,还可以是文件等等. ...
- Easydarwin加FFMPEG实现HLS流视频点播
前言 最近有点迷茫,所以将自己用过的东西写个Demo记录一下,复习复习. 具体实现: Easydarwin 一个开源的好用的流媒体平台框架. FFMPEG 一个视频音频处理神器,就是用起来有点麻烦, ...
- Orchard中如何配置远端发布
Orchard中默认安装是有Blog功能的.下面介绍如何配置Remote Blog Publishing功能,使用Windows Live Writer客户端发布博客. 一,开启Remote Blog ...
- IIS7.5 在已有的WEB网站上配置FTP发布
IIS7.5 有了很多新特性,例如FashCGI,Rewrite 模块的内置,简易的FTP发布等等,但是即使是微软,也没有详细的文档,本文详细的介绍了如何在现有的WEB网站上建立FTP发布. IIS ...
随机推荐
- 利用fiddler给android模拟器抓包
启动模拟器 setting---wireless&networks----mobile networks----access pointnames -------------------- 然 ...
- jQuery常用的查找Dom元素方法
废话不多说,先来个总结,然后下面是demo 一. 同级节点之间的检索(检索深度N=0) next()是在兄弟节点中,往后匹配; prev()是在兄弟节点中,往前匹配. 二. 父级/子级节点的检索(检索 ...
- hibernate--student_course_score
学生, 课程,分数的设计. a)使用联合主键@EmbeddedId 使用Serializable接口 b)不适用联合主键 联合主键: 3张表, student: id, name course: id ...
- [DNS]ACL、also-notify、视图服务器及安全设置
1. ACL :访问控制列表放在named.conf的头部,如果acl的内容太多,可以另创建一个文件,将acl放在该文件中,再在主配置文件named.conf用include 将文件加载进来(记得放在 ...
- Xcode的管理工具
Xcode插件管理工具Alcatraz Alcatraz 1.简介 Alcatraz是一个能帮你管理Xcode插件丶模版及颜色配置的工具.它可以直接集成在Xcode的图形界面中,让你感觉就像在使用Xc ...
- 四、Hbase
一.什么情况下使用Hbase 例子: 这里Order By无时不刻的处理,我们要看到刚才的足迹,不能使用缓存技巧. 根据时间戳来查询,显然很快,应为Hbase就是以时间戳来存的. 将最近的数据放在内存 ...
- (一)Javascript基础知识
一,五种基本数据类型和一种复合数据类型. 五种基本数据类型 1,undefined 2,null 3,string 4,number 5,boolean 6,复合数据类型(Object,Array,D ...
- 【BZOJ 1367】 1367: [Baltic2004]sequence (可并堆-左偏树)
1367: [Baltic2004]sequence Description Input Output 一个整数R Sample Input 7 9 4 8 20 14 15 18 Sample Ou ...
- js格式化时间戳
//js格式化时间戳,转换为时间格式 2017-1-15 4:10:15 function getLocalTime(nS) { var time = new Date(parseInt(nS) * ...
- 为什么建立TCP连接需要三次握手,为什么断开TCP连接需要四次握手,TIME_WAIT状态的意义
为什么建立TCP连接需要三次握手? 原因:为了应对网络中存在的延迟的重复数组的问题 例子: 假设client发起连接的连接请求报文段在网络中没有丢失,而是在某个网络节点长时间滞留了,导致延迟到达ser ...