我有一个rtmp on demand流(由Wowza服务器提供),并且我已经使用JWPlayer对其进行了配置。它工作得很好,我想像YouTube视频播放器缓冲区流进度一样,在JWplayer控制栏中添加吹气流程进度。
这是我的JW播放器代码:
<body>
<div id='mediaspace'>JW test Player with buffer enabled</div>
<script type='text/javascript' src='jwplayer.js'></script>
<script type='text/javascript'>
jwplayer('mediaspace').setup({
'flashplayer': 'player.swf',
'file': 'mp4:path1/revolution.2012.101.hdtv-lol.mp4',
'provider': 'rtmp',
'frontcolor': '000000',
'lightcolor': '000000',
'screencolor': '000000',
'bufferlength': '20',
'streamer': 'rtmp://198.105.211.36:1935/mediacache',
'controlbar': 'bottom',
'width': '700',
'height': '400'
});
</script>
</body>发布于 2012-12-06 22:35:30
Short Answer
RTMP只存储足够播放视频而不会暂停的缓冲区,这就是为什么在JWPlayer中看不到缓冲区的原因。
Long Answer
YouTube使用HTTP Pseudo-Streaming来提供其内容,这允许视频的完全缓冲。您当前正在使用RTMP流式传输没有真正缓冲区的视频。
从JWPlayer support forum
当播放器播放来自RTMP服务器的内容时,缓冲区不会暴露。这是因为与渐进式下载或HTTP伪流不同,RTMP只会下载足够的内容来显示它,而不需要暂停,因此播放器不会报告缓冲区百分比。
如果您希望您的观众能够找到尚未下载的视频部分,同时能够缓冲视频(适用于低速互联网连接),您可以切换到HTTP Pseudo-Streaming。
发布于 2012-12-07 16:20:10
通常,Wowza RTMP会将流作为块进行传输。如果我在player中暂停流,wowza服务器也会暂停播放数据块。这会导致我们无法从服务器获取数据/区块。如此清晰,我希望缓冲是不可能的。
对于HTTP伪流,它不是这样的,它使用渐进式下载方法。所以缓冲是可能的。
更多信息请参考:http://en.wikipedia.org/wiki/Flash_Video
https://stackoverflow.com/questions/13472046
复制相似问题