针对很多网友对于视频聊天室软件如何实现这一块不懂,今天我们杭州雅顾视频聊天室服务商就来为大家详细的谈谈我们视频聊天室开发的理解:
我们的流水线
1.采集: win下用vfw的api可以采集到usb摄像头的原始数据(RGB或者YUV的),如果是特别的摄像头,肯定会自带sdk,同样能得到这种数据。
2.编码压缩:视频一般都压缩一下,不然太大了,网络部好传。现在多用H.264,可以找开源库x264完成视频编码。如果摄像头能直接出来这种数据 那这步就省了。视频编码一般要I420的数据,可以用ffmpeg里的swscale转换一下颜色空间,它还可以拉伸图像,改变分辨率,效率不错
3.网络传输:这部分无非实现tcp、udp传输的功能,把视频数据能发出去及可收回来。如果想做的通用一些,可以用视频会议常用的一个协议SIP,找一个开源库,如resiprocate(庞大的工程)
4.视频解码:数据收到后需要解码才能显示,H.264解码多用ffmpeg
5.显示:win api可以用BitBlt或者DrawDibDraw实现,需要BGR的数据,可能要用ffmpeg的swscale转换一下颜色空 间。也可以考虑用D3D(以前用DDraw)实现,一般可以直接显示I420或者YV12的数据,想跨平台可以考虑用opengl。

在windows 平台上directshow技术依然是最强大的,虽然从vista开始microsoft 推出media foundation,但是media foundation依然还达不到directshow是高度。
directshow 老版本在DxSDK中,后面独立出来,再后来directshow被放到windows SDK,所以开发directshow应 用,你必须安装这两个SDK中的一个(两个都是免费的)。streams.h是放在“\DXSDK\Samples\C++\DirectShow \BaseClasses”目录下,你的工程需要包含此头文件目录。
对于视频功能的实现你可以参照directshow sample code—amcap的实现,与BaseClasses在同一目录。
首先是枚举PC上的视频设备,然后将视频设备绑定source filter,接下来选择合适的filter构建 filter graph。这样你就实现视频功能了。

2014年视频聊天室开发经验分享相关推荐

  1. 视频聊天室如何成功赚钱分享攻略二

    上一期和大家分享了视频聊天室如何成功赚钱,这一次继续和大家分享这个攻略: 说到这里,咱们曾经能够看到,并非聊天的人潮自身缺少商业价值,而是眼前没有什么好的方法将这种价格加以挖掘.这才是真正的问题所在. ...

  2. 视频聊天室如何成功赚钱分享攻略一

    视频聊天室,是许多网站上常见的一项服务,也是各中不同网恋故事发生的重要场所.简直一切上网者都有过正在视频聊天室里和天南海北的男少男少女女胡吹海侃的阅历.也有许多网民热衷此道,把正在视频聊天室聊天作为上 ...

  3. 使用WebRTC搭建前端视频聊天室——数据通道篇

    转自 使用WebRTC搭建前端视频聊天室--数据通道篇 在两个浏览器中,为聊天.游戏.或是文件传输等需求发送信息是十分复杂的.通常情况下,我们需要建立一台服务器来转发数据,当然规模比较大的情况下,会扩 ...

  4. WebRTC实现网页版多人视频聊天室

    因为产品中要加入网页中网络会议的功能,这几天都在倒腾 WebRTC,现在分享下工作成果. 话说 WebRTC Real Time Communication 简称 RTC,是谷歌若干年前收购的一项技术 ...

  5. android 使用WebRTC搭建视频聊天室

    使用WebRTC搭建前端视频聊天室--入门篇 https://www.jianshu.com/p/b54b27970534 android webrtc 两个手机 P2P 视频聊天 https://w ...

  6. 网页的视频聊天室开发

    现在网上很多朋友在弄网页的视频聊天室 通过学习,我自己也做了个简单的小例子,几十行JavaScript脚本就能轻松实现视频通话:也不用去下载指定的什么浏览器,因为IE.firefox.chrome等w ...

  7. FMS视频聊天室的开发

    FMS视频聊天室的开发 2009年06月07日 由于FLASH技术的发展, FLASH对本地P2P的支持,越来越进这就出现了FMS FLASH视频聊天室的开发. flash聊天室,fms聊天室源码 一 ...

  8. FluorineFx + Flex视频聊天室案例开发----客户端

    上一篇<FluorineFx + Flex视频聊天室案例开发----服务器端>详细的介绍了如何利用FluorineFx开发一个及时通信的视频聊天室服务器处理程序,并通过Web网站来宿主这个 ...

  9. FMS案例开发--视频聊天室(三)

    本文要介绍的内容主要有利用SharedObject来实现聊天文字聊天和在线用户的列表,以及实现语音视频聊天等. 前一篇文章介绍了实现用户注册和登录的功能,本文接着介绍用户注册并成功登录后的相关功能开发 ...

  10. Flex与.NET互操作(十六):FluorineFx + Flex视频聊天室案例开发

    本文将使用FluorineFx和Flex结合介绍一个简单的视频聊天室案例开发,希望通过此篇和大家交流FluorineFx和Flex的相关技术,同时也希望本篇可以帮助到需要使用FluorineFx做及时 ...

最新文章

  1. 蓝牙 socket 建立不了_蓝牙电话之PBAP同步电话簿的安卓实现
  2. spring@Transactional注解事务不回滚不起作用无效的问题处理
  3. distance在函数 int_TensorFlow函数:tf.losses.cosine_distance
  4. 大厂中秋礼盒大PK!祝大家中秋快乐,送大家鹅厂月饼礼盒!
  5. 30万手表推荐_一年收入20万—30万的小生意,市场上有哪些呢?推荐几个供参考...
  6. 携反省一起上路的FreeEIM
  7. 计算机控制实时的概念,计算机控制系统复习资料..doc
  8. 周立功-成功心法(1):低年级大学生如何查资料写论文
  9. python勿使用mutable值作为默认参数
  10. 超详细!一文带你了解 LVS 负载均衡集群!
  11. 3道常见的SQL笔试题,你要不要来试试!
  12. CCF考试——201312-5I’m stuck!
  13. 社工心理学:如何让LOL找你约架的社会人给你道歉
  14. 韩乔生最牛的一次解说 (超级搞笑)
  15. 二手贴片机多少钱一台,二手贴片机转让
  16. endnote中科大版是什么意思_ios14.2rc是什么意思 ios14.2rc版是原来的“GM”版吗
  17. RNA-ATTO 390|RNA-ATTO 425|RNA-ATTO 465|RNA-ATTO 488|RNA-ATTO 495|RNA-ATTO 520近红外荧光染料标记核糖核酸RNA
  18. 一日不刷算法题,明日编码临大敌
  19. “ 输出1900年之后任意一年的日历 ”完整编程思路!
  20. 002 计算bonus

热门文章

  1. LM393低功耗双电压比较器参数、引脚、应用详解
  2. Android 自定义CheckBoxPreference的CheckBox复选框
  3. masm5 0的使用介绍
  4. 电子邮件工作原理及主要协议
  5. Arduino射频识别RC522至数据库
  6. 全国地区 mysql表_2017全国省市区数据库-2017全国省市区数据库下载 官方版 - 河东下载站...
  7. linux top交叉编译_Linux 交叉编译工具链
  8. BP神经网络算法简介
  9. 按120分计算成绩 mysql_mySql数据库基础
  10. 扫描仪怎样装无线网络服务器,怎么设置打印机IP地址和安装扫描仪。