TVideoGrabber中可以对音频、视频剪辑进行重新编码剪辑,多的朋友知道这个功能更点,但是具体操作上还是不是很熟悉,这里总结一下,主要步骤如下:

1、通过指定开始和停止的时间,可以简单的剪辑视频

2、可以重新编码剪辑

——通过指定开始和停止时间

——使用当前音频或是视频编码器

——通过应用任何帧采集功能(文本覆盖、图形叠加、视频旋转······)

Reencoding 关于重新编码提供了如下的属性:

  • Reencoding_SourceVideoClip:源视频剪辑的文件名称
  • Reencoding_NewVideoClip:要创建的视频剪辑的文件名称
  • Reencoding_StartTime:表示在100ns单位中的开始时间, (default -1 = beginning)
  • Reencoding_StartFrame:开始帧(default -1 = beginning)
  • Reencoding_StopTime:表示在100ns单位中的停止时间,(default -1 = end),
  • Reencoding_StopFrame:停止帧 (default -1 = end of the clip)
  • Reencoding_IncludeAudioStream:如果启用的话,音频流将会包含在新的视频剪辑中。
  • Reencoding_IncludeVideoStream:如果启用的话,视频流将会包含在新的视频剪辑中。
  • Reencoding_Method:用AVI格式记录rm_AVI,或用ASF格式记录rm_ASF。
  • Reencoding_UseAudioCompressor  :如果启用,将会使用当前的音频压缩。Reencoding_UseVideoCompressor:如果启用,将会使用当前的视频压缩。
  • Reencoding_UseFrameGrabber:如果启用,将会应用图形、文字叠加、裁剪和旋转。
  • Reencoding_WMVOutput:剪辑将会被创建为.wmv。

关于开始/停止帧和倍数

——default -1值指定了“剪辑开始的起始”或是“要到剪辑结束的时候停止”

——倍数用100ns单位指定,比如3秒= 30000000

——如果指定一个Reencoding_StartTime以及Reencoding_StartFrame,Reencoding_StartTime就会被忽略。

——如果指定Reencoding_StopTime 和 a Reencoding_StopFrame,这个Reencoding_StopTime就会被忽略。

开始重新编码:

开始重新编码的视频剪辑:

——设置“Reencoding_...”属性

——调用Startreencoding

备注:

当调用Startreencoding时,进程开始重新编码,并会立即返回,不会等到重新编码进程完成。

如果你正在用编程的方式创建组件,在破坏组件之前,一定要等待OnReencodingCompleted,否则重新编码进程将会在完成前被打断。

>>>示例源码

简单的调用StopReencoding即可在重新编码进程之前结束进程。

>>>TVideoGrabber 下载

视频处理控件TVideoGrabber如何重新编码视频的更多相关文章

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  9. 怎样在不对控件类型进行硬编码的情况下在 C#vs 中动态添加控件

    文章ID: 815780 最近更新: 2004-1-12 这篇文章中的信息适用于: Microsoft Visual C# .NET 2003 标准版 Microsoft Visual C# .NET ...

随机推荐

  1. iOS FMDB小试了一下

    今天从早上9点,一直在看FMDB,知道中午11:40.我的效率是不是很低下.中间也碰到了几个小bug. 虽然做了一个小demo,但是觉得还比不上在项目中使用中锻炼的多,先暂且一总结. 先下载FMDB的 ...

  2. JS-006-表格元素操作

    直接上菜咯... 以下为 HTML 表格源码: <html> <head> <meta http-equiv="Content-Type" conte ...

  3. JS-004-判断元素显示状态

    在日常的 web 编程或 UI自动化脚本编写过程中,经常会遇到判断页面元素的显示状态,以对应的执行相应的操作.此文主要以 js 判断页面元素的存在状态为例,简单叙述一下 js 是如何判断元素的显示状态 ...

  4. FTP文件夹打开错误,Windows无法访问此文件夹

    错误提示: Windows 无法访问此文件夹,请确保输入的文件夹是正确的,并且你有权访问此文件夹.    解决方法/步骤如下    1.请确保输入的文件夹是正确的,并且你有权访问此文件夹.可以在浏览器 ...

  5. JBoss远程方法调用漏洞利用详解

    早上起床打开微博看到空虚浪子心大神发的一篇有关Jboss漏洞的文章,对我等菜鸟来说那边文章看起来还是很吃力的,所以查了查国内外的资料,翻译写了这边文章,记录一下. 在JBoss服务器上部署web应用程 ...

  6. myeclipse中的web项目导入到eclipse中注意事项,项目部署到tomcat后无法访问jsp文件

    打开eclipse,点击空白处,右键可以看到import>general>existing projects into workspace>next>选择你的myeclipse ...

  7. Spring Boot 3 Hibernate

    JdbcTemplate Spring对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中. JdbcTemplate ...

  8. IntelliJ IDEA 的 Java 热部署插件 JRebel 安装及使用

    JRebel 介绍 JRebel for Intellij JRebel 在 Java Web 开发中, 一般更新了 Java 文件后要手动重启 Tomcat 服务器, 才能生效,  自从有了 JRe ...

  9. IE、chrome、火狐中如何调试javascript脚本

    1.  IE中点击"F12",在弹出页面中调试javascript脚本 2. chrome中点击"F12",在弹出页面中调试javascript脚本 3.  火 ...

  10. swift NSUserDefaults的基本使用

    import UIKit @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate { var window: ...