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

>>>TVideoGrabber 下载

用自动交替混合模式激活混合器组件

比如,混合器组件被命名为“Mixer1”,源组件命名为“Source1”、“Source2”、“Source3”。

设置 Mixer1.VideoSource = vs_Mixer

设置Mixer1.Display_AutoSize = false (如果你想控制组件的宽度和高度,并防止它被自动调整大小)

设置 Mixer1.Mixer_MosaicLines = 1

设置Mixer1.Mixer_MosaicColumns = 1

调用 Mixer_AddToMixer (Source component, 0, 0, 0, group number, group display duration, true, true)

比如,如果(group 1 = 1500 ms, group 2 = 2000 ms, group 3 = 2500 ms)

  1. Mixer1.Mixer_AddToMixer (Source1.UniqueID, 0, 0, 0, 1, 1500, True, True)
  2. Mixer1.Mixer_AddToMixer (Source2.UniqueID, 0, 0, 0, 2, 2000, True, True)
  3. Mixer1.Mixer_AddToMixer (Source3.UniqueID, 0, 0, 0, 3, 2500, True, True)

然后如下进行调用:

  1. Source1.StartPreview()
  2. Source2.StartPreview()
  3. Mixer1.StartPreview()

在马赛克混合模式中激活混合器组件

在这种模式下,目标组件窗口已细分为x行和y列,每个源显示在一个预定义的位置(X,Y ) 。

举个例子,混频器组件被命名为“ Mixer1”,源组件 “Source1”、“Source2”、“Source3”“Source4”将会以2× 2布局显示。

设置 Mixer1.VideoSource = vs_Mixer

设置 Mixer1.Display_AutoSize = false (如果你想控制组件的宽度和高度,并防止它被自动调整大小)

设置 Mixer1.Mixer_MosaicLines = 2

设置Mixer1.Mixer_MosaicColumns = 2

调用 Mixer_AddToMixer (Source component, 0, line, column, 0, 0, true, true)

Mixer1.Mixer_AddToMixer (Source1.UniqueID, 0, 1, 1, 0, 0, True, True)

Mixer1.Mixer_AddToMixer (Source2.UniqueID, 0, 1, 2, 0, 0, True, True)

Mixer1.Mixer_AddToMixer (Source3.UniqueID, 0, 2, 1, 0, 0, True, True)

Mixer1.Mixer_AddToMixer (Source4.UniqueID, 0, 2, 2, 0, 0, True, True)

然后调用,如下:

Source1.StartPreview()

Source2.StartPreview()

Source3.StartPreview()

Source4.StartPreview()

Mixer1.StartPreview()

在交替/马赛克混合模式下激活混合组件

在此模式下每个源将会交互显示到一个单一的视频窗口。

举个例子:混合器组件命名为“ Mixer1”,源组件 “Source1”、“Source2”、“Source3、“Source4”将会以2个1 x 2 源组件布局交互显示。

将会使用命名为“55”和“66”的2组,“55”组将会以1500毫秒的间隔显示,“66”组将会以2500毫秒的间隔显示。

设置Mixer1.VideoSource = vs_Mixer

设置Mixer1.Display_AutoSize = false (如果你想控制组件的宽度和高度,并防止它被自动调整大小)

设置Mixer1.Mixer_MosaicLines = 1

设置Mixer1.Mixer_MosaicColumns = 2

调用 Mixer_AddToMixer (Source component, 0, line, column, group number, group duration, true, true)

然后调用,如下:

    1. Source1.StartPreview()
    2. Source2.StartPreview()
    3. Source3.StartPreview()
    4. Source4.StartPreview()
    5. Mixer1.StartPreview()

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

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

    其实一个或是几个作为普通的视频源使用的TVideoGrabber组件,可以进行混合来作为一个TVideoGrabber组件使用,这些普通的组件可以是视频捕捉设备或是视频剪辑等.同时这个混合的组件独立于 ...

  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. Sql server中左连接语句

    数据库中学生表和课程表如下: 左连接sql语句: select a.studentName,a.studentAge,b.courseName from student a left join cou ...

  2. net Datable 基本操作

    net Datable 基本操作 using System; using System.Collections.Generic; using System.Text; using System.Dat ...

  3. 使用sed,awk将love转换成LOVE,将CHINA转换成china

    将love转换成LOVE,将CHINA转换成china echo "love CHINA" | sed -e 's/love/LOVE/' -e 's/CHINA/china/' ...

  4. stasm+三角剖分

  5. ps、grep和kill联合使用杀掉进程(转)

    例如要杀掉hello这个进程,使用下面这个命令就能直接实现.   ps -ef |grep hello |awk '{print $2}'|xargs kill -9 这里是输出ps -ef |gre ...

  6. vb和php 基于socket通信

    php代码(页面代码非cmd命令脚本) <?php $server = '127.0.0.1'; $port = 8888; $socket = socket_create(AF_INET, S ...

  7. RabbitMQ学习总结 第四篇:发布/订阅 Publish/Subscribe

    目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...

  8. [BS-05] init、initWithFrame和initWithCoder的区别

    init.initWithFrame和initWithCoder的区别 1.Xib方式自定义UIView(指任意的UI控件) 使用Xib文件,就是我们所常用的“拖控件”的方式.如果我们使用了该方法创建 ...

  9. python eval

    缘起 小例子 def test_1(val): print "val", val, type(val) def test_2(val): print ) if __name__ = ...

  10. jQuery.proxy()函数

    jQuery.proxy(),接受一个函数,然后返回一个新函数,并且这个新函数始终保持了特定的上下文(context)语境.   context 代表上下文 name是上下文的某个属性 jQuery. ...