如何使用Flash Media Server测试localhost上的流带宽?

时间:2011-01-13 21:29:03

标签: flash media bandwidth-throttling

我正在尝试在客户端对我的actionscript(AS3)代码进行debbug,该代码与localhost上的Flash Media Server 4一起使用。到目前为止,一切似乎都很好。

但是,当我尝试使用其他远程流媒体服务器测试我的播放器时,我会发现错误,因为服务器和播放器之间的带宽传输较低。

是否有一种简单的方法可以在localhost上使用FMS4模拟低带宽?

  • by config,application.xml等?
  • 通过programmation(main.asc)?
  • 两个?

2 个答案:

答案 0 :(得分:1)

如果您想在框外思考一下,可以使用NetLimiter之类的应用程序。只需为特定应用程序制作一个过滤器,您就可以将带宽限制到您想要的任何速度(低至字节)。

修改

此外,通过一些简短的Google搜索,我能够在Application.xml文件中找到client.setBandwidthLimitBandwidthCap

还有一篇关于Configuring Limiting Bandwidth的文章(如果有帮助的话)。

答案 1 :(得分:0)

根据这篇文章“配置限制带宽”(参见上面的链接 - 感谢Brad Christie)我选择采用Server-Side ActionScript(SSAS)方式。我认为更简单。

嗯,这就是我所做的一步:

  1. 创建一个文件“main.asc”和copy&粘贴下面的代码。

    更多信息:http://www.peachpit.com/articles/article.aspx?p=31217

    main.asc的

    var bandwidth;
    application.allowDebug = true;
    
    // Application callback functions
    
    application.onConnect = function(client, user) {
    
        //12800 = 100 Kbps  
        //64000 = 500 Kbps
        //131072 = 1Mbps
        //327680 = 2.5 Mbps
        //983040 = 7.5 Mbps
        //1966080 = 15 Mbps 
        //3932160 = 30 Mbps 
        //6553600 = 50 Mbps 
        //15728640 = 120 Mbps
    
        bandwidth = 64000;
    
        client.setBandwidthLimit(bandwidth, bandwidth); 
    
        trace("clientToServer = " + client.getBandwidthLimit(0) +  " serverToClient="+  client.getBandwidthLimit(1));
    
        application.acceptConnection(client);
    
        trace("17 janvier TEST");
    }
    
  2. 将文件保存在FMS应用程序目录下的文件夹下

    示例:FMS \ application \ dyn

  3. 启动FMS服务器。如果出现问题,请检查日志文件

    示例:FMS \ logs_defaultVHost_ \ dyn_definst_ \ application.00.log

  4. (可选)更改测试的可变带宽值。我把一些常见的互联网连接速度用字节转换成了评论。