背景需求:

许多客户有这样的需求:微信公众号做为平台来对摄像机进行直播;可以让用户随时随地打开公共号就可以观看;保证画面的流畅性;保证视频的并发访问量等。

问题分析:

虽然需求看似很简单,其实真正实现起来还是有相当多的阻碍。

首先:如何让摄像机的输出的视频流可以在微信的公众平台实现播放,摄像机输出的视频流播放往往需求插件是无法实现在微信公众号中进行直播;

其次:自己部署视频服务来进行流分发,对自身的服务器硬件和网络带宽都是有要求的,虽然硬件是可以解决的,但是对于一般普通的个人或者是私人企业单独投入一套完整的设备只是为了完成公众号直播,这个代价有点大;

再次:也是让普通用户最头痛的一点就是如何使内网的摄像机完成这些需求;如何在普通家庭网络这种情况下成功让外网访问到我们的视频流。

解决方案:

EasyNVR可以完成流的分发、转发出满足微信直播的视频流;也可以做到,拉取视频流转推出去,但是拉取视频流的限制在于服务端需要拉取到摄像机的视频流,在内网我们可以通过分配摄像机固定ip,配置出rtsp地址来进行拉流然后完成分发推流等一系列功能,对于公网,在普通家庭网络的情况下没有固定的外网ip,通过rtsp拉取摄像头的视频就显得不是很方便了。对于摄像头数量比较少的情况下,再在公网部署流媒体服务器就是显得相对比较笨重了;针对EasyNVR拥有推流CDN的功能,配合cdn可以完美解决这一尴尬问题;

以腾讯云为例进行方案介绍:

1.内网部署EasyNVR,并完成摄像机配置;

1.1成功访问EasyNVR

1.2通过RTSP地址将摄像机接入EasyNVR

1.3视频广场成功展示接入设备对应信息

2.开通CDN服务,并接入(以腾讯云为例);

2.1 登陆腾讯云,开通腾讯云直播服务;

腾讯云登陆

直播LVB

2.2进入【视频直播】控制台

2.1.1. 选择直播码接入

左边菜单选择【直播码接入】,点击【确认接入】

2.1.2. 选择推流生成器

点击【推流生成器】获得直播推流地址,下面会具体列出【推流地址】,播放地址等

可以根据自定义的ID,生成一批推流地址,然后配置到EasyNVR通道CDN地址中

2.1.3. 通过EasyNVR成功接入CDN

3.通过CDN返回播放地址接入微信公众号;

注意由于腾讯云放回的m3u8地址是一个直播的视频流地址,直接播放会在微信页面有一个【继续访问】的页面提示;

解决方案: 写一个视频播放静态页面,通过有域名来访问就可以避免微信的认证提醒;

(播放页面主要内容为HLS流媒体播放器,具体实现方式参考EasyNVR自身DEMO)

将此地址放至微信公众号可以直接进行访问进行直播;


关于EasyNVR

EasyNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP协议输出的设备接入到EasyNVR,EasyNVR能够将这些视频源的音视频数据进行拉取,转换为RTMP/HLS,进行全平台终端H5直播(Web、Android、iOS),并且EasyNVR能够将视频源的直播数据对接到第三方CDN网络,实现互联网级别的直播分发;

详细说明:http://www.easynvr.com

点击链接加入群【EasyNVR解决方案】:383501345

Copyright © EasyDarwin Team 2012-2018

EasyNVR结合阿里云/腾讯云CDN实现微信/小程序直播的方案的更多相关文章

  1. 腾讯技术分享:微信小程序音视频与WebRTC互通的技术思路和实践

    1.概述 本文来自腾讯视频云终端技术总监rexchang(常青)技术分享,内容分别介绍了微信小程序视音视频和WebRTC的技术特征.差异等,并针对两者的技术差异分享和总结了微信小程序视音视频和WebR ...

  2. 腾讯技术分享:微信小程序音视频技术背后的故事

    1.引言 微信小程序自2017年1月9日正式对外公布以来,越来越受到关注和重视,小程序上的各种技术体验也越来越丰富.而音视频作为高速移动网络时代下增长最快的应用形式之一,在微信小程序中也当然不能错过. ...

  3. ***腾讯云直播(含微信小程序直播)研究资料汇总-原创

    这段时间抽空研究了下直播技术,综合比较了下腾讯云直播的技术和文档方面最齐全,现把一些技术资料和文档归集如下: 1.微信小程序移动直播入门导读 https://cloud.tencent.com/doc ...

  4. 微信小程序对接显示阿里云数据库数据

    现实需求 在项目中需求,有时候现场设备发生故障,需要远程的人员知道.除了邮件方式,以微信小程序的方式也很好.今天进行尝试,并制作了一个demo版本. 1.微信小程序申请制作前端 1.1lists文件( ...

  5. 微信小程序腾讯云php后台解决方案

    微信小程序腾讯云php后台解决方案 微信小程序前段需要添加必要的文件以配合后端 (1)wafer2-client-sdk sdk提供了几种接口包括登陆,获取用户openid,图片上传等 (2)conf ...

  6. 基于小程序云Serverless开发微信小程序

    本文主要以使用小程序云Serverless服务开发一个记事本微信小程序为例介绍如何使用小程序云Serverless开发微信小程序.记事本小程序的开发涉及到云函数调用.云数据库存储.图片存储等功能,较好 ...

  7. 微信小程序wx.getLocation()获取经纬度及JavaScript SDK调用腾讯地图API获取某一类地址

    简介 腾讯位置服务为微信小程序提供了基础的标点能力.线和圆的绘制接口等地图组件和位置展示.地图选点等地图API位置服务能力支持,使得开发者可以自由地实现自己的微信小程序产品. 在此基础上,腾讯位置服务 ...

  8. 阿里云和腾讯云免费SSL证书 专题

    阿里云部署SSL证书 http://www.cnblogs.com/sslwork/p/5984167.html 查找中间证书 为了确保兼容到所有浏览器,我们必须在阿里云上部署中间证书,如果不部署证书 ...

  9. 利用阿里云腾讯云正版KMS服务器端口转发

    注意:以下内容仅供实验,请勿用于任何非法用途我们知道,阿里云和腾讯云在内网部署了KMS服务器,而且是正版的,那么,有没有办法使用公网的计算机直接或间接连接到这些KMS服务器呢,受代理服务器和跳板机配置 ...

随机推荐

  1. 关于#include文件包含

    1.对于函数头文件: #include <filename> 一般对于标准库文件以一个.h后缀结尾: 2.对于本地文件: #include "filename.h" 对 ...

  2. Geek改变世界

    在10月24号的GeekPwn到来前,主办方 — 来自Keen Team的创始人大牛蛙希望我能为GeekPwn写点东西.作为GeekPwn的顾问,我也非常乐意为这次首秀做一点事情. 正如之前提到过的, ...

  3. 【AS3 Coder】任务五:Flash 2D游戏的第二春(上)

    在上一节中,我们基本上已经讲完了游戏中最主要的逻辑部分,不过为了更加全面地运用Starling中的一些特性,在本节中我们将一起来看看如何实现多面板切换以及粒子效果,这两个玩意儿可是比较频繁会出现于St ...

  4. 权重轮询调度算法(WeightedRound-RobinScheduling)-Java实现3

    权重轮询调度算法(WeightedRound-RobinScheduling)-Java实现3 之前两篇相关博文: 权重轮询调度算法(WeightedRound-RobinScheduling)-Ja ...

  5. 4. 使用别的json解析框架【从零开始学Spring Boot】

    转载:http://blog.csdn.net/linxingliang/article/details/51585921 此文章已经废弃,请看新版的博客的完美解决方案: 78. Spring Boo ...

  6. Android Activity之间经典切换动画

    package com.iteye.androidtoast; import java.util.ArrayList; import java.util.List; import android.ap ...

  7. Vue-router(vue2.0)用法示例

    一.新建3个组件 1./src/components/post.vue <template> <div> hello world! this is POST! </div ...

  8. android 通过bitmapfactory得到图片真实像素的方法,以及没有得到真实像素的原因

    原文来自:原文地址 由于这个错误导致浪费非常长时间找原因,所以要赶紧记录下来. 过程是这种,在使用android读取图片的时候,就是使用BitmapFactory.decodeResource(thi ...

  9. Mybatis 存在多个日志时设置日志

    mybatis默认使用log4j,当有self4j这个日志jar包存在时会无法打印sql,请移除或者在工程启动时显示设置mybatis使用的日志类 log4j.logger.org.apache.ib ...

  10. git个人使用总结(命令版)

    一.基础命令 快照类操作:add.status.diff.commit.reset.rm.mv 分支类基本操作:branch.checkout.log.stash 分享及更新项目基本操作:pull.p ...