我尝试让jwplayer在Android手机上工作当我把rtsp协议文件源它在android工作正常但显示错误,该文件无法在iOS和PC上播放
没有rtsp文件源在PC和iOS上工作正常 rtsp文件源只能在android中运行
jwplayer("mediaplayer").setup({
playlist: [{
sources: [
{file:'rtmp://localhost:1935/vod/mp4:dexter.mp4'}//used it to PC ,
{file:'rtsp://localhost:1935/dexter/dexter.mp4'}// used it to android,
{file:'http://localhost:1935/vod/mp4:dexter.mp4/playlist.m3u8'}//and this for iOS
],
title: 'dexter',
width: 854,
height: 480,
});
答案 0 :(得分:3)
我通过检查设备是否为安卓来解决问题
var ua = navigator.userAgent.toLowerCase();
var isAndroid = ua.indexOf("android") > -1;
jwplayer("mediaplayer").setup({
playlist: [{
sources: [
(isAndroid)?{file:'rtsp://localhost:1935/vod/dexter/dexter.mp4'}:{file:'rtmp://localhost:1935/vod/mp4:dexter/dexter.mp4'},
{file:'http://localhost:1935/vod/mp4:dexter.mp4/playlist.m3u8'}
],
title: 'dexter',
width: 854,
height: 480,
});
答案 1 :(得分:1)
你不能将RTSP放在setup(),block中,因为Flash或HTML5都不支持它。
你应该做这里提到的工作 - http://www.longtailvideo.com/support/jw-player/28856/using-apple-hls-streaming
HLS Live on Android
对于直播流,在Android或其他非iOS移动平台上播放还没有很好的解决方案。一种解决方法是为Android提供本机应用程序,其中可以支持HLS流。但这超出了JW Player的范围。如果您使用Wowza Media Server,另一个选择是为不支持HLS的设备提供回退RTSP流。例如:
<div id="myElement">
<a href="rtsp://example.com/vod/mp4:myVideo.mp4">watch this stream over RTSP</a>
</div>
jwplayer("myElement").setup({
file: "http://example.com:1935/vod/mp4:myVideo.mp4/playlist.m3u8",
image: "/assets/myPoster.jpg",
fallback: false
});
答案 2 :(得分:0)
没有人似乎提到的是HLS带来的可怕延迟是“块视频”,它可能是30秒,如果你正在进行实时流媒体,如视频调查,RTMP和RTSP是更好的解决方案。 RTSP在iOS和iOS上运行良好Android通过VLC延迟1到2秒。