使用Flash Media Server(FMS)录制mp4格式的视频

最近在做一个有关视频直播和点播的项目,客户的一个需求就是可以控制对直播流的录制,直播的实现采用的是Adobe的Flash Media
Server,具体方式就是:视频采集端采集视频并编码->rtmp流输出->FMS服务器->rtmp流广播->客户端播放器
加载rtmp流->播放;直播流的录制采用在FMS服务器上录制的方式,而不是在视频采集设备端进行录制。

由于客户要求进行可控录制,所以不能采用那种在视频流发送端就写好参数如: nc.publish("livestream","record")
的方式,而是采用了Adobe提供的一个用于FMS的Application,叫做dvrcast,它的实现实际是写了好多的FMS服务器端的as代码
(.asc格式的文件),通过调用FMS服务器端的Stream类的record方法来进行录制,通常record方法会录制为.flv文件,最近通过查
看FMS自带的一些开发文档,终于搞清楚了如何将视频流录制为.mp4文件,具体方法如下:

假设 视频采集端发过来的视频流是livestream,如  nc.publish("livestream","live");//采用直播模式发送

在服务器端想对该视频进行录制,则使用如下代码:

s=Stream.get("mp4:yourRecordName.mp4");//获取一个Stream对象,注意参数,录制mp4或f4v文件时,必须加前缀"mp4:",yourRecordName是你想保存的名字

if(s){

s.record("record");//开始录制,"record"参数可选,表示如果存在yourRecordName.mp4文件,会进行覆盖

s.play("livestream");//此句比较重要,如果不写的话,你会发现所创建的.mp4文件体积不变,此句代码相当于FMS服务器端接管了livestream流的publish工作,因为服务器端的play方法优先于视频采集端的publish方法

}

如果想停止录制,则代码如下:

s=Stream.get("yourRecordName");//可以写"mp4:yourRecordName.mp4",也可以只写yourRecordName

if(s)
s.record(false);//停止录制

所录制的视频文件可以通过FMS服务器进行点播播放。

时间: 2025-01-04 23:24:10

使用Flash Media Server(FMS)录制mp4格式的视频的相关文章

Flash Media Server 安装调试教程

Flash Media Server 4.5(fms4.5)教程一:安装 你安装的Flash Media Server 4.5之前,Adobe建议您先卸载任何早期版本的FMS,你可能有你的应用程序和/或配置文件备份之前.安装过程中已经改变,从早期版本的一些方法. 安装的Flash Media Server 4.5,请按照下列步骤: 双单击启动安装FlashMediaServer4.5.exe.你会看到图1所示,其中列出服务器上的所有四个版本的启动画面.在下一个屏幕上,告诉你什么是即将发生,建议您

Flash Media Server 入门教程

本文原地址:http://www.nshen.net/article/2007/08/29/fms-tutorial/ ,转载请保留链接 . 我把我以前的那些FMS学习笔记整理了一下,做了下修改,成了一页的FMS教程,方便想学FMS的新手来看,如果还有错误或者看不懂的地方欢迎留言. 注意: Flash Media Server的最新版本已经到FMS 4.X了 ,由于本入门教程是在2006~2007年所写,年代久远所以使用FMS 2演示,但当你了解了原理后可以很容易的升到4,因为FMS 1 到 F

Adobe/Flash Media Server 5.0 linux 64位系统下的安装

一.下载 Adobe/Flash MS5.0下载地址: http://fs1.d-h.st/download/00036/VOt/adobemediaserver_5_ls1_linux64.tar.gz # ./wget http://fs1.d-h.st/download/00036/VOt/adobemediaserver_5_ls1_linux64.tar.gz 二.安装 # ./tar -xvf adobemediaserver_5_ls1_linux64.tar.gz # ./cd

(转)ubuntu 12.04搭建Adobe Flash Media Server服务

破解版传送门:http://fms45.cuplayer.com/fms4download.html 福利:1462-5247-1705-7678-8379-5590 下载解压 cd进目录,./installFMS 缺少libcap动态库 A required package, libcap, was not found on your Linux x86_64 Debian. sudo apt-get install libcap-dev 获得动态库 安装完后运行./installFMS ,还

在iOS中,摄像头录制的视频是mov格式的,虽然mov兼容mp4,但是有些需求需要用到mp4格式的视频文件。

AVURLAsset *avAsset = [AVURLAsset URLAssetWithURL:[NSURL fileURLWithPath:path] options:nil]; NSArray *compatiblePresets = [AVAssetExportSession exportPresetsCompatibleWithAsset:avAsset]; if ([compatiblePresets containsObject:AVAssetExportPresetLowQua

Flash Media Server 4.5 序列号 (fms4.5 激活码)

激活码一枚   ,网上找不到的..我今天放出来了哦... 1462-5864-7783-6034-8316-3718    (亲测 可用) 安装前找到系统盘下windows/system32/drivers/etc,用记事本打开文件"HOSTS" 在下面加入127.0.0.1 activate.adobe.com127.0.0.1 practivate.adobe.com127.0.0.1 ereg.adobe.com127.0.0.1 activate.wip3.adobe.com1

FMS4.5( Adobe Flash Media Server4.5)流媒体服务器搭建

下载FMS4.5 下载地址:http://pan.baidu.com/s/1pJLi5Ur(已更新) FMS是用于用户之间相互通讯的新平台.它集成了Flash多媒体交互的特性,又添加了实时音频和实时数据流等新特色.下面介绍了FMS4.5的简单安装和使用,是本人搭建FMS时的经验,汇集了网上各种散列资源的集合,希望对有需要的人得以帮助,若各位还觉得玩不够,在C:\Program Files\Adobe\Flash Media Server 3\documentation中有更多的官方文件和教学,值

架设FLASH视频流server心得

什么样的情况下才使用FMS?有下面几种情形的时候,你可能须要用到FMS 1.须要通过Flash Player 播放视频,而视频是以流的方式,而不是http渐进式下载的方式进行播放的时候.渐进式下载就是仍然走http协议,youtube,土豆等网站就是.那么什么时候才真正须要用到流视频呢? 1)视频文件超过100MB或超过10分钟,用户有seek需求的时候 2)视频文件不须要被下载的时候,rtmp假设不行,能够试试rtmpe 3)视频流须要多台server协同工作的时候,能够用FMS Origin

动态获取爱奇艺上传视频mp4格式url地址

有时候,在工作中有些客户需要用到视频,我们大家都知道视频是非常的耗费流量的,因此,如果因为项目要求客户单独买台视频服务器是非常划不来的.那么将视频上传到优酷,爱奇艺等视频网站来托管那是一件很好的解决方案. 今天主要和大家聊下如果使用爱奇艺开放平台中来动态获取自己上传视频的mp4格式url地址.我们闲话少说,直接开始. 首先先看下通过这种方式获取的视频播放效果: 一.我们需要注册成为爱奇艺开发者       爱奇艺开放平台: http://open.iqiyi.com/index.html   二