谷歌浏览器播放rtmp,谷歌浏览器播放器怎么设置

大家好,关于谷歌浏览器播放rtmp很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于谷歌浏览器播放器怎么设置的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

谷歌浏览器播放rtmp,谷歌浏览器播放器怎么设置

本文目录

  1. 什么手机浏览器能登陆海康头
  2. 浏览器哪个好
  3. rtsp流浏览器播放方案

一、什么手机浏览器能登陆海康头

谷歌Chrome浏览器接入RTSP海康大华摄像头视频纯H5播放谷歌观看海康摄像头原创

传统安防行业都是在ie用控件观看海康大华摄像头,但是ie现在很多人不想用,随着谷歌禁用flash,h5观看直播必定有所增加。这里分享一种用纯H5无插件谷歌浏览器观看海康摄像头的方式。

使用环境摄像头需要在同一个局域网内。

1、选择一个后台流媒体服务器支持rtmp推流,并进行转码支持http-flv,hls。

这里后台流媒体采用开源的nginx,可以自行百度编译下载,也可以去这里下载编译的nginx

2、去ffmpeg官网:可以下载ffmpeg,用ffmpeg通过rtsp从摄像头拉流推给nginx,有能力的可以自行开发设备接入网关用rtps,海康sdk,大华sdk,onvif,国标等方式从摄像头拉取码流在进行推流

自行测试可以用ffmpeg推流命令如下

ffmpeg-i"rtsp://admin:admin123456@192.168.1.155:554/h264/ch1/main/av_stream"-vcodec libx264-acodec copy-f flv"rtmp://127.0.0.1:1935/live/hik1"

这样ffmpeg就把rtsp流转rtmp推给nginx。nginx做转发,前端就可以用谷歌观看了。

3、前端开发,可以用开源的flv.js进行开发,直接传入flv-url就可以进行观看视频,并且延时在1s左右。

总体就是需要将摄像头的码流转成http-flv,这样前端才能用flv.js直接播放码流无需插件。

完整demo路径如下包含后台流媒体和前端jsdemo,可观看海康实时视频

二、浏览器哪个好

1、火狐是所有浏览器中功能最强大的,也是非基于IE核心的,所以在安全性上具有绝对优势,在插件的配合下扩展性能极为强大。可以实现基本上所有浏览器的功能,但内存消耗大,启动慢,IE网页兼容性较差,更适合配置较高的电脑使用

2、chrome是搜索巨头 Google开发的新浏览器,在高配置机上速度极快,界面简约、漂亮,很有前途,但目前功能较少,插件兼容性不是很好,我感觉Google Chrome的功能还无法取代现有的IE和Firefox浏览器,试用着玩玩还可以,真的要用其进行工作、学习和阅读,Google Chrome浏览器还有很长的一段路要走。希望真和Google所说的一样,Google Chrome尚处在测试版阶段,真正的功能还没有开发好。

3、360安全浏览器与世界之窗览器系出同源(凤凰工作室),由同一个开会团队开发,功能都比较齐全,性能很好,但第三方支持远逊于傲游。360浏览器安全性在IE内核的浏览器中堪称第一,如果经常浏览高危区的话推荐使用。

4、世界之窗很小巧。但是依然是IE内核,这个看你的设置和插件,有些可能是插件冲突,既然是IE内核,有些问题就无法解决的。这个也根据你看的网页有关系。

5、首创双核引擎,5级加速体系,兼容双核的应用平台,个性化的皮肤体系以及先进的安全组件,搜狗为用户打造了快速,便捷,个性,安全的上网体验。

6、傲游是IE内核的浏览器中功能最强的,也是国内浏览器里面做的最好的之一。有丰富的插件和皮肤支持,相当于IE中的火狐,但较易假死,不很稳定。

7、Opera是一个小巧而功能强大的跨平台互联网套件,包括网页浏览、下载管理、邮件客户端、RSS阅读器、IRC聊天、新闻组阅读、快速笔记、幻灯显示(Operashow)等功能。它还提供很多方便的特性,包括Wand密码管理、会话管理、鼠标手势、键盘快捷键、内置搜索引擎、智能弹出式广告拦截。但是好像不怎么支持独立播放视频推荐使用腾讯的TT浏览器因为它的功能更强大

三、rtsp流浏览器播放方案

rtsp流在主流浏览器并不支持直接播放。比如大华的视频流:rtsp://admin:123456@

192.168.10.129/cam/realmonitor?channel=1&subtype=0,用vlc可以直接播放。但在浏览器会报ERR_UNKNOWN_URL_SCHEME。那如何在浏览器中播放呢。

1、安装插件(chrome最新版基本都不支持)

类如:kurento,vlc插件(谷歌浏览器版本41以下),vgx插件(不支持高版本,chrome72.0版本可用)等。

2、安装软件(中间件,基本都付费)

类如:Appemit(调用vlc插件播放rtsp),可以免安装的,目前只能windows,免费版会有提示。

猿大师中间件(底层调用VLC的ActiveX控件,实现在主流浏览器网页中内嵌播放多路RTSP的实时视频流),中间件收费的。

PluginOK(牛插)中间件。底层调用ActiveX控件VlcOcx.dll。(商业用途需付费使用)

推流--------------服务器转发--------------拉流

a,vlc软件串流到http协议,网页显示几个视频需启动几个vlc,只适合应急场景。

b,html5+ websocket_rtsp_proxy实现视频流直播,基于MSE(Media Source Extensions,W3C),扩展H5的功能。

步骤:服务器安装streamedian服务器,客户端通过video标签播放。

基于nginx实现rtmp转化,用flash实现播放。由于flash目前大多浏览器默认禁用,不推荐此方式。

步骤:安装ffmpeg工具,安装nginx。

另外nginx-rtmp-module也支持HLS协议,可以搭建基于hls的直播服务器。

d.rtsp转hls播放,通过ffmpeg转码

步骤:安装ffmpeg工具,ffmpeg转码。

ffmpeg-i"rtsp://admin:123456@192.168.10.129/cam/realmonitor?channel=1&subtype=0"-c copy-f hls-hls_time 2.0-hls_list_size 0-hls_wrap 15"D:/hls/test.m3u8"

缺点是直播流延时很大,对实时要求比较高的不满足要求。

案例:基于EasyDarwin拾建转码服务器。参考地址:

e.websocket代理推送,FFMPEG转码

(1)Gin+WebSocket+FFMPEG实现rtsp转码,参考:

通过FFMPEG把rstp转成http,ginrtsp作为转发服务器,但需要自己写相应接口,需要了解go语言。

(2)node+ ffmpeg+ websocket+ flv.js,参考:

步骤:在node服务中建立websocket;通过fluent-ffmpeg转码,将RTSP流转为flv格式;通过flv.js连接websocket,并对获取的flv格式视频数据进行渲染播放。

import WebSocket from'ws'import webSocketStream from'websocket-stream/stream'import ffmpeg from'fluent-ffmpeg'//建立WebSocket服务const wss= new WebSocket.Server({ port: 8888, perMessageDeflate: false})//监听连接wss.on('connection', handleConnection)//连接时触发事件function handleConnection(ws, req){ //获取前端请求的流地址(前端websocket连接时后面带上流地址)  const url= req.url.slice(1) //传入连接的ws客户端实例化一个流  const stream= webSocketStream(ws,{ binary: true}) //通过ffmpeg命令对实时流进行格式转换输出flv格式  const ffmpegCommand= ffmpeg(url)  .addInputOption('-analyzeduration','100000','-max_delay','1000000')  .on('start', function(){ console.log('Stream started.')})  .on('codecData', function(){ console.log('Stream codecData.')})  .on('error', function(err){    console.log('An error occured:', err.message)    stream.end()  })  .on('end', function(){    console.log('Stream end!')    stream.end()  })  .outputFormat('flv').videoCodec('copy').noAudio()  stream.on('close', function(){   ffmpegCommand.kill('SIGKILL') })  try{  //执行命令传输到实例流中返回给客户端   ffmpegCommand.pipe(stream) } catch(error){   console.log(error) }}

优点全部基于js。前端即可搞定。

参考:

关于本次谷歌浏览器播放rtmp和谷歌浏览器播放器怎么设置的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。

声明:信息资讯网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者东方体育日报所有。若您的权利被侵害,请联系 删除。

本文链接:http://www.gdxhedu.com/news/146080.html