宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应
您当前的位置: > 博客2 > Rtmp技术

[FMS]FMS使用需要注意的几种问题总结说明

2016-10-13 00:16:48 点击量:9 标签: 收藏本文

[FMS]FMS使用需要注意的几种问题总结说明:

* 中文编码:

有些时候我们用flash去读取外部的php,asp.....文件里的中文显示在flash里会出现乱码的情况,为了解决在flash里显示中文很多教程里通常都直接加了一句System.useCodepage=true
问题就在这,显示不了外部中文是因为flash内默认用Unicode编码,外部的文件大多都是gb2312,加上这句System.useCodepage=true代表强制flash使用系统默认的gb2312,这样flash就显示正确了,但fms服务器端默认也是用unicode的,这样客户端跟服务器端不同编码有时就会出错了,搜了一下server字典好象没有System.useCodepage=true了。。。所以解决办法就是去掉System.useCodepage=true,在外部php或asp中把编码转成utf-8,至于怎么转,不知道,问你的asp或php程序员吧 ,另外不要用记事本编辑你的asc文件。。即使编辑最后要一定另存为utf-8格式。

* 判断影片播放结束

ns.onStatus=function(info){
if(info.code=="NetStream.Play.Stop")trace("结束")
}


乍看好象没错,但是如果设置了缓冲以后(setBufferTime)就不好用了,仔细研究了一下原因4这样的

监视onStatus(info) ,info.code:

开始播放

NetStream.Play.Start (其实还没播放)

然后缓冲(根据setBufferTime设置的秒数缓。。)

NetStream.Buffer.Full (缓冲装满了,这才开始播放)

然后播放完了

NetStream.Play.Stop (其实还没播放完)

注意了,然后还要播放缓冲 - -b

NetStream.Buffer.Empty (缓冲空了,这才播放完了。。)

群里的kinglong兄比较聪明~,先Stop的时候做个记号,然后再满足Empty才算播放完,也就是两个条件,因为网速慢也会Empty。。。好办法
但我看了一下帮助,好象有一个专门的事件通知播放结束
ns.onPlayStatus=function(info){
if(info.code=="NetStream.Play.Complete")trace("感谢观看帮助")
}

* 防火墙,端口

默认安装的话默认端口是1935,管理是1111端口,记得防火墙要把1935和1111端口打开。

ABOUT US
宜昌农人网络科技有限公司

我们是一家提供综合软件外包与弱电工程服务的技术公司。

业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。

公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室