此篇文章主要讲了如何使用C# Winform程序模拟一个远程监控系统,并使用RTP实时传输协议传输数据。

应用场景:远程监控、局域网视频会议、客户端流式缓冲播放

这方面的资料还是有一些,但是都需要整合,最主要没有可以运行的源代码,通过自己的调研,把可以能运行的源代码贡献给大家。如果有用请点个赞。当然如果大家有其他问题,也可以留言,会尽自己的努力解答大家的疑问。

Summary:

远程监控:获取远程摄像头的实时视频监控数据,并在中央管理PC上显示。

实现过程与方案:

1.前端摄像头

a.使用本地或某本地摄像头模拟远程摄像头,并获取摄像帧数据。

    • 多媒体软件调研,可以调用摄像头
    • 对视频数据进行H.264压缩
    • 获取视频帧数据

b.处理获取到的摄像帧数据,并传输

    • 对帧数据进行压缩。将bmp格式转换成jpg格式。
    • 使用RTP实时传输协议对压缩后的数据进行传输。
      • 传输协议调研
      • 建立RTP通信(底层采用UDP)
      • 大数据包分包
      • 身份识别
      • 丢失处理

2.后端管理PC

a.获取到客户端传输过来的数据,并对数据进行分包重组,并根据数据来源将摄像视频显示在不同窗口中

c# 远程监控(2) 摄像头调研

c# 远程监控(3) RTP协议 RTP.NET.DLL

c# 远程监控(4) 接收端 RTP包重组 分屏显示

c# 远程监控(1) 大纲的更多相关文章

  1. 转载:JProfiler远程监控LINUX上的Tomcat过程细讲

    来源于xuwanbest的博客   所谓"工欲善其事,必先利其器",好的工具确能起到事半工倍的作用.我用到的最多的就两个JConsole 和JProfiler .JConsole监 ...

  2. SNMP远程监控进程信息的OID

    最近有个项目需要用snmp远程监控进程信息.于是我查了一下资料. 一.资料 .1.3.6.1.2.1.25.4.2.1.1.iso.org.dod.internet.mgmt.mib-2.host.h ...

  3. c# 远程监控(4) 接收端 RTP包重组 分屏显示

    我们在上一期使用RTP协议,并进行了配置,打包了视频数据,这一期我们就对发送的数据进行重组,并显示在接受端上.最后对其进行扩展,支持多客户端视频发送,并在接收端分屏显示.完成远程监控的模拟. 先来个效 ...

  4. 远程监控 – 应用程序运行状况测量 CSF 博客

    在远程监控基础知识和故障排除中,我们探讨了 Windows Azure 平台提供的基础指标.信息源.工具和脚本,介绍了有关监控和应用程序运行状况的基本原则.我们演示了如何利用这些基本原则对在 Wind ...

  5. jvisualvm远程监控Tomcat

    网上已经有很多这方面的资料,但有些很杂乱,这里做了整理总结. 一.Java VisualVM 概述 对于使用命令行远程监控jvm 太麻烦 . 在jdk1.6 中 Oracle 提供了一个新的可视化的. ...

  6. 使用visualvm 远程监控 JVM

    1. 测试环境 Ubuntu Server 10.01 2.  在服务器上安装 jstatd 组件 使用apt-get 命令安装 openjdk 即可 : sudo apt-get install o ...

  7. Jstatd方式远程监控Linux下 JVM运行情况

    前言 最近一个项目部署在服务器上运行时出现了问题,经过排查发现是java内存溢出的问题,所以为了实时监控服务器java内存的情况,需要远程查看服务器上JVM内存的一些情况.另外服务器系统是CentOS ...

  8. java自带的监控工具VisualVM(二)远程监控

    ps:尝试了网上的几个网友提供的方法,始终不得其法,汇总后,终于尝试成功!将一些需要注意的细节也记录下来以后备用! 我们经常需要对我们的开发的软件做各种测试, 软件对系统资源的使用情况更是不可少, 目 ...

  9. java-jvisualvm远程监控tomcat

    一.修改要访问的远程主机(Linux)相关文件,本文档只介绍了java-jvisualvm的JMX方式: 1.打开$CATALINA_HOME/bin/startup.sh, 找到倒数第二行(也就是e ...

随机推荐

  1. getsockopt/setsockopt 函数说明

    [ getsockopt/setsockopt系统调用]       功能描述: 获取或者设置与某个套接字关联的选 项.选项可能存在于多层协议中,它们总会出现在最上面的套接字层.当操作套接字选项时,选 ...

  2. MVC5中使用KinEditor

    参考:http://www.cnblogs.com/weicong/archive/2012/03/31/2427608.html 第一步 将 KindEditor 的源文件添加到项目中,建议放到 / ...

  3. KindEditor 4.1.10 (2013-11-23)首行空格不能显示在编辑器内

    KindEditor版本: KindEditor 4.1.10 (2013-11-23) 一.BUG再现步骤: 1.文章前面插入二个全角空格作为缩进,因为并非所有段落都有缩进故不采用 CSS 的 te ...

  4. Android ADB使用

    ADB全称Android Debug Bridge, 是android sdk里的一个工具, 用这个工具可以直接操作管理android模拟器或者真实的andriod设备(如G1手机). 它的主要功能有 ...

  5. iPhone开发教程之retain/copy/assign/setter/getter

    assign: 简单赋值,不更改索引计数 copy: 建立一个索引计数为1的对象,然后释放旧对象retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1 1. 接触过C,那么 ...

  6. 28个你必须知道的HTML5的新特性,技巧以及技术

    原文地址:http://adamlu.com/?p=584#header 总结一下: 1. 新的Doctype 尽管使用<!DOCTYPE html>,即使浏览器不懂这句话也会按照标准模式 ...

  7. configparser

    configparser configparser模块是python中用来处理类似于windows的ini格式文件, 一个ini文件的格式 [section] key = value

  8. android侧滑菜单笔记

    一.SlidingPaneLayout v4包下的控件,使用简单,功能简洁.官方文档明确说明该控件只能左侧滑动.使用如下: <android.support.v4.widget.SlidingP ...

  9. materialish-progress

    https://github.com/pnikosis/materialish-progress materialish-progress-master.zip

  10. git codes

    https://github.com/chibi-guts/DressUpProject https://github.com/TuttiFruttiFT/TFAndroid https://gith ...