srs_bwt.html 5.4 KB
<!DOCTYPE html>
<html>
<head>
    <title>SRS</title>   
    <meta charset="utf-8">
    <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css"/>
    <style>
        body{
            padding-top: 55px;
        }
        #main_modal {
            width: 700px;
            margin-left: -350px;
        }
    </style>
</head>
<body>
<div class="navbar navbar-fixed-top">
    <div class="navbar-inner">
        <div class="container">
            <a id="srs_index" class="brand" href="#">SRS</a>
            <div class="nav-collapse collapse">
                <ul class="nav">
                    <li><a id="nav_srs_player" href="srs_player.html">SRS播放器</a></li>
                    <li><a id="nav_srs_publisher" href="srs_publisher.html">SRS编码器</a></li>
                    <li><a id="nav_srs_chat" href="srs_chat.html">SRS会议</a></li>
                    <li class="active"><a id="nav_srs_bwt" href="srs_bwt.html">SRS测网速</a></li>
                    <li><a id="nav_jwplayer6" href="jwplayer6.html">JWPlayer6播放器</a></li>
                    <li><a id="nav_osmf" href="osmf.html">AdobeOSMF播放器</a></li>
                    <li><a id="nav_vlc" href="vlc.html">VLC播放器</a></li>
                </ul>
            </div>
        </div>
    </div>
</div>
<div class="container">
    <div class="alert alert-info fade in">
        <button type="button" class="close" data-dismiss="alert">×</button>
        <strong><span>Usage:</span></strong> <span>点击“开始测速”即可测带宽,最大可测试带宽由服务器限制</span>
    </div>
     <div class="form-inline">
         URL:
         <input type="text" id="txt_url" class="input-xxlarge" value=""></input>
         <button class="btn btn-primary" id="btn_play">开始测速</button>
    </div>
     <div id="main_modal" class="modal hide fade">
         <div class="modal-header">
             <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
             <h3>SRS Bandwidth Check</h3>
         </div>
         <div class="modal-body">
            <div class="row-fluid">
                <div class="span1"></div>
                <div class="span10">
                    <div class="progress progress-striped active" id="pb_buffer_bg">
                        <div class="bar" style="width: 0%;" id="progress_bar"></div>
                    </div>
                </div>
                <div class="span1"></div>
            </div>
            <div id="check_status">status</div>
            <div id="check_info">info</div>
         </div>
         <div class="modal-footer">
             <button class="btn btn-primary" data-dismiss="modal" aria-hidden="true"> 关闭 </button>
         </div>
     </div>
    <hr>
    <footer>
        <p><a href="https://github.com/ossrs/srs">SRS Team &copy; 2013</a></p>
    </footer>
    <div class="container">
        <div id="player"></div>
    </div>
</div>
</body>
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="js/bootstrap.min.js"></script>
<script type="text/javascript" src="js/swfobject.js"></script>
<script type="text/javascript" src="js/srs.page.js"></script>
<script type="text/javascript" src="js/srs.log.js"></script>
<script type="text/javascript" src="js/srs.player.js"></script>
<script type="text/javascript" src="js/srs.publisher.js"></script>
<script type="text/javascript" src="js/srs.utility.js"></script>
<script type="text/javascript" src="js/winlin.utility.js"></script>
<script type="text/javascript" src="srs_bwt/src/srs.bandwidth.js"></script>
<script type="text/javascript">
    var bandwidth = null;

    $(function(){
        srs_init_bwt("#txt_url");

        $("#btn_play").click(on_click_play);
        $("#main_modal").on("show", on_start_bandwidth_test);
        $("#main_modal").on("hide", on_stop_bandwidth_test);
    });

    function on_click_play() {
        $("#check_status").text("");
        $("#check_info").text("");
        $("#progress_bar").width("0%");
        $("#main_modal").modal({show:true, keyboard:false});
    }
    function on_start_bandwidth_test() {
        $("#div_container").remove();
        $("#progress_bar").removeClass("bar-danger");

        var div_container = $("<div/>");
        $(div_container).attr("id", "div_container");
        $("#player").append(div_container);

        var player = $("<div/>");
        $(player).attr("id", "player_id");
        $(div_container).append(player);

        var url = $("#txt_url").val();

        bandwidth = new SrsBandwidth("player_id", 100, 1);
        bandwidth.on_bandwidth_ready = function() {
            this.check_bandwidth(url);
        }
        bandwidth.on_update_progress = function(percent) {
            $("#progress_bar").width(percent + "%");
        }
        bandwidth.on_update_status = function(status) {
            $("#check_status").text(status);
        }
        bandwidth.on_srs_info = function(srs_server, srs_primary, srs_authors, srs_id, srs_pid, srs_server_ip) {
            $("#check_info").text(
                    "server:" + srs_server + ", primary:" + srs_primary + ", authors:" + srs_authors +
                    ", srs_id:" + srs_id + ", srs_pid:" + srs_pid + ", ip:" + srs_server_ip
            );
        }
        bandwidth.on_error = function(code) {
            $("#progress_bar").addClass("bar-danger");
        }
        bandwidth.render(url);
    }
    function on_stop_bandwidth_test() {
        bandwidth.stop();
    }
</script>
</html>