diff --git a/trunk/research/players/srs_player.html b/trunk/research/players/srs_player.html index bbe21a81c..b07115de9 100755 --- a/trunk/research/players/srs_player.html +++ b/trunk/research/players/srs_player.html @@ -536,6 +536,9 @@ srs_player = new SrsPlayer("player_id", srs_get_player_width(), srs_get_player_height()); srs_player.on_player_ready = function() { var buffer_time = 0.5; + if (url.indexOf('.m3u8') > 0) { + buffer_time = 2; + } if (query.buffer) { for (var i = 0; i < bts.length - 1; i++) { diff --git a/trunk/research/players/srs_player/release/srs_player.swf b/trunk/research/players/srs_player/release/srs_player.swf index 085cb9495..7fb90389f 100644 Binary files a/trunk/research/players/srs_player/release/srs_player.swf and b/trunk/research/players/srs_player/release/srs_player.swf differ diff --git a/trunk/research/players/srs_player/src/HlsNetStream.as b/trunk/research/players/srs_player/src/HlsNetStream.as index da5339d00..6ad04a561 100755 --- a/trunk/research/players/srs_player/src/HlsNetStream.as +++ b/trunk/research/players/srs_player/src/HlsNetStream.as @@ -110,7 +110,9 @@ package to = hls.duration * 1000 / hls.tsCount * m3u8_refresh_ratio; } setTimeout(refresh_m3u8, to); - log("m3u8 not changed, retry after " + to.toFixed(2) + "ms"); + log("m3u8 not changed, retry after " + to.toFixed(2) + "ms, duration=" + + hls.duration.toFixed(2) + "s, count=" + hls.tsCount.toFixed(0) + + ", refresh-ratio=" + m3u8_refresh_ratio.toFixed(2)); return; } diff --git a/trunk/research/players/srs_player/src/Player.as b/trunk/research/players/srs_player/src/Player.as index b5e918702..3de0eb555 100644 --- a/trunk/research/players/srs_player/src/Player.as +++ b/trunk/research/players/srs_player/src/Player.as @@ -31,7 +31,7 @@ package public class Player { // refresh every ts_fragment_seconds*M3u8RefreshRatio - public static var M3u8RefreshRatio:Number = 0.5; + public static var M3u8RefreshRatio:Number = 0.45; // parse ts every this ms. public static var TsParseAsyncInterval:Number = 80;