其实一个或是几个作为普通的视频源使用的TVideoGrabber组件,可以进行混合来作为一个TVideoGrabber组件使用,这些普通的组件可以是视频捕捉设备或是视频剪辑等。同时这个混合的组件独立于源组件,当第一组组件持续的发送给它视频帧时,它可以停止、预览、录制、暂停等······

但是如何进行混合,好多的朋友就不是很了解,源组件可以用以下的方式显示到混合器组件中:

——作为一个基本的“复制”:在混合模式中的第二个组成部分接收和显示从第一部分组件来的视频。

——在需要的时候,将几个视频源切换成一个单一的来源。

——最为一个镶嵌模式,比如说在同一时间用2x2布局显示4个摄像机。

——交替显示,比如4摄像机一个接一个的显示

——一个马赛克/交替布局,比如16个摄像机用4个交替的2 x2摄像机的马赛克布局显示。

结合马赛克/交替混合

结合马赛克和交替布局,比如通过打组交替成4 X 4的视频窗口显示的4个摄像机来显示16个摄像机。

Mixer_AddToMixer组件参数:

——第1个参数是源组件的UniqueId

——第2个参数在那个时候不使用,只是将它设置为0

——第3个参数是源将会显示在的镶嵌线(对于一个只是交替使用设置为0)

——第4个参数是源将会显示在的马赛克列(对于一个只是交替使用设置为0)

——第5个参数是显示组号(对于一个只是交替使用设置为0)

——第6个参数是显示组持续的毫秒时间(对于一个只有马赛克设置为0)

——第 7参数应设置为TRUE

—— 第8参数应设置为TRUE

基本混合(第二个组件从第一组件接收到视频帧)

在这个模式下,你有第二组组件,可以将第一个组件作为一个视频源使用。

比如第一个组件使用预览,第二组件独立的开始/停止/暂停/恢复录音的第一个组件,并进行连续的预览。

>>>示例代码

VideoGrabber2将会作为视频源接收通过VideoGrabber1显示和发送的视频。

选择混合视频尺寸

默认情况下,混合组件将会使用以下视频大小:

——在开启混合组件之前,如果源已经开始,这个混合组件就会使用源尺寸。

——如果源尚未开始,混合组件会开始于320 x240。

在StartRecording StartPreview之前,在混合组件上调用UseNearestVideoSize来选择视频尺寸。

>>>示例代码

在需要的时候,将几个源转换为一个

类似于用多于一个视频源的基本混合,可以通过调用Mixer_Activation来转换源,比如:

>>>示例代码

TVideoGrabber 下载

视频处理控件TVideoGrabber中如何混合多个视频源(1)的更多相关文章

  1. 视频处理控件TVideoGrabber中如何混合多个视频源(2)

    在前面的<视频处理控件TVideoGrabber混合多个视频源(1)>一文中,已经对TVideoGrabber中混合视频源做了一些内容的说明,本文将继续前文: >>>TV ...

  2. 如何在视频处理控件TVideoGrabber中设置音频捕捉设备

    TVideoGrabber不仅可以捕捉视频,还可以作为多媒体播放器,并支持包括C#..NET.VB.NET.C++.Delphi.C++Builder和ActiveX平台,本文将剖析TVideoGra ...

  3. 视频处理控件TVideoGrabber如何重新编码视频/音频(2)

    在前面的文中<视频处理控件TVideoGrabber如何重新编码视频>已经讲解了部分TVideoGrabber重新编码音频.视频剪辑的内容,下面将继续说明. 重新编码进程 重新编码开始时, ...

  4. 视频处理控件TVideoGrabber如何重新编码视频

    TVideoGrabber中可以对音频.视频剪辑进行重新编码剪辑,多的朋友知道这个功能更点,但是具体操作上还是不是很熟悉,这里总结一下,主要步骤如下: 1.通过指定开始和停止的时间,可以简单的剪辑视频 ...

  5. 如何在WPF应用程序中使用视频处理控件TVideoGrabber

    要在WPF 中使用 TVideoGrabber 组件,需要像下面的方法来使用 VS.NET(DLL) 版本的组件: ——复制TVideoGrabber_x.x.x.x_x86.dll到c:/windo ...

  6. 视频处理控件TVideoGrabber部分技术问题解答

    TVideoGrabber是一个功能全面.易于使用的视频捕捉工具和多媒体播放器,本文搜集了一些TVideoGrabber的技术问答,并针对于有的朋友遇到的疑难给出了解答. 一.在TVideoGrabb ...

  7. 视频处理控件TVideoGrabber视频捕捉设设备相关问题

    选择一个视频捕捉设备 首先设置 VideoSource = vs_VideoCaptureDevice来选择一个视频捕捉设备作为一个视频源. 通过指定VideoDevice属性来选择当前的视频捕捉设备 ...

  8. 视频处理控件TVideoGrabber如何对屏幕进行录制/压缩

    TVideoGrabber可以对屏幕进行录制和压缩,本文来详细的说明在多种情况下TVideoGrabber是如何实现屏幕的录制和压缩. 屏幕录制 当VideoSource = vs_ScreenRec ...

  9. MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件

    类似于多层级的角色与权限控制功能,用MVC实现MVC树控件,mvc中应用treeview,实现复选框树的多层级表单控件.最近我们的项目中需要用到树型菜单,以前使用WebForm时,树型菜单有微软提供的 ...

随机推荐

  1. offset/client/scroll一些总结

    offset/client/scroll一些总结 1.offset 首先offset共有五个值 1.offsetParent 2.offsetTop 3.offsetLeft 4.offsetWidt ...

  2. dede让channelartlist标签支持currentstyle属性 完美解决

    打开include\taglib\channelartlist.lib.php 找到 $pv->Fields['typeurl'] = GetOneTypeUrlA($typeids[$i]); ...

  3. Android PickerView滚动选择器的使用方法

    手机里设置闹钟需要选择时间,那个选择时间的控件就是滚动选择器,前几天用手机刷了MIUI,发现自带的那个时间选择器效果挺好看的,于是就自己仿写了一个,权当练手.先来看效果: 效果还行吧?实现思路就是自定 ...

  4. Python模块(radom)

    radom radom模块提供了随机生成对象的方法 Help on module random: NAME random - Random variable generators. FILE /usr ...

  5. TXT导入出现乱码

    错误#1 11:15 2012-12-19客户提供一txt文本文件,要求导入到数据库,选用dts导入工具,选择数据源步骤如下列预览时出现乱码解答#1 双击打开原始文件中文显示正常,将其另存为选择编码为 ...

  6. 转:DLL如何导出C++的类

    由于DLL的出现是针对C语言的,本身对C++的支持不够好.所以如何从DLL中导出C++的类作为DLL的API的一部分就成了问题. 我试了一下 class __declspec(dllexport) F ...

  7. iOS 可延展视图(点击前显示部分文字,点击后显示全部)

                       #import <UIKit/UIKit.h> @interface AppDelegate : UIResponder <UIApplicat ...

  8. SweetAlert2 使用教程

    SweetAlert2是一款功能强大的纯Js模态消息对话框插件.SweetAlert2用于替代浏览器默认的弹出对话框,它提供各种参数和方法,支持嵌入图片,背景,HTML标签等,并提供5种内置的情景类, ...

  9. 数据块损坏(block corruption)

    分为物理损坏和逻辑损坏-物理损坏一般指数据块头部不可以访问.数据块校验值不合法,数据块格式不再是oracle承认的格式-逻辑损坏一般是在物理性结构完整的情况下,数据的内容在含义上不正确,比如保存了不允 ...

  10. Silverlight动画显示Line线

    目的:在silverlight中显示两点之间的连线,要求动画显示连线效果. 如果需实现动画效果不得不了解,Storyborad对象: Storyboard Silverlight   通过时间线控制动 ...