视频处理控件TVideoGrabber如何重新编码视频/音频(2)
在前面的文中《视频处理控件TVideoGrabber如何重新编码视频》已经讲解了部分TVideoGrabber重新编码音频、视频剪辑的内容,下面将继续说明。
重新编码进程
重新编码开始时,OnReencodingStarted事件会发生。
在重新编码进程中,OnReencodingProgress事件会周期性的发生,报告完成的百分比。
当重新编码结束时,OnReencodingCompleted事件会发生。
从视频剪辑中重新编码音频剪辑/提取音频
可以实现重新编码一个视频剪辑,或是只提取音频到一个.WAV 或是.MP3音频剪辑,只是需要对新的剪辑指定“.wav”或“.mp3”作为文件扩展名。
要用MP3提取,需要先下载和注册LAME音频编码器(有regsvr32.exe)。
下面是一个示例,编码提取一个WAV音频剪辑的4秒,从2秒开始(所以停止时间=2S+4S),并用MP3的格式保存。
>>>示例代码
转换一个DVD到一个 M2V文件
你可以像下面这个重新编码一个DVD到一个 M2V文件,通过DGMPGDec,如下:
——下载DGMPGDec执行文件,并在你选择的文件夹中解压
——使用下面的编码命令
示例:
——假设,你解压DGMPGDec到c:/myDGfolder中
——你的DVD放置在“D:”驱动中
——你想生成M2V到c:/myOutputFolder/myOutputVideo.m2v
>>>示例代码
关于重新编码进度备注
由OnReencodingProgress事件报告的值并不重要,因为它不可以预测执行重新编码DGIndex.exe所需要的时间,在编码的最后会通过OnReencodingCompleted事件通知。
>>>TVideoGrabber 下载
视频处理控件TVideoGrabber如何重新编码视频/音频(2)的更多相关文章
- 视频处理控件TVideoGrabber如何重新编码视频
TVideoGrabber中可以对音频.视频剪辑进行重新编码剪辑,多的朋友知道这个功能更点,但是具体操作上还是不是很熟悉,这里总结一下,主要步骤如下: 1.通过指定开始和停止的时间,可以简单的剪辑视频 ...
- 视频处理控件TVideoGrabber中如何混合多个视频源(2)
在前面的<视频处理控件TVideoGrabber混合多个视频源(1)>一文中,已经对TVideoGrabber中混合视频源做了一些内容的说明,本文将继续前文: >>>TV ...
- 如何在WPF应用程序中使用视频处理控件TVideoGrabber
要在WPF 中使用 TVideoGrabber 组件,需要像下面的方法来使用 VS.NET(DLL) 版本的组件: ——复制TVideoGrabber_x.x.x.x_x86.dll到c:/windo ...
- 如何在视频处理控件TVideoGrabber中设置音频捕捉设备
TVideoGrabber不仅可以捕捉视频,还可以作为多媒体播放器,并支持包括C#..NET.VB.NET.C++.Delphi.C++Builder和ActiveX平台,本文将剖析TVideoGra ...
- 视频处理控件TVideoGrabber中如何混合多个视频源(1)
其实一个或是几个作为普通的视频源使用的TVideoGrabber组件,可以进行混合来作为一个TVideoGrabber组件使用,这些普通的组件可以是视频捕捉设备或是视频剪辑等.同时这个混合的组件独立于 ...
- 视频处理控件TVideoGrabber部分技术问题解答
TVideoGrabber是一个功能全面.易于使用的视频捕捉工具和多媒体播放器,本文搜集了一些TVideoGrabber的技术问答,并针对于有的朋友遇到的疑难给出了解答. 一.在TVideoGrabb ...
- 视频处理控件TVideoGrabber如何对屏幕进行录制/压缩
TVideoGrabber可以对屏幕进行录制和压缩,本文来详细的说明在多种情况下TVideoGrabber是如何实现屏幕的录制和压缩. 屏幕录制 当VideoSource = vs_ScreenRec ...
- 视频处理控件TVideoGrabber视频捕捉设设备相关问题
选择一个视频捕捉设备 首先设置 VideoSource = vs_VideoCaptureDevice来选择一个视频捕捉设备作为一个视频源. 通过指定VideoDevice属性来选择当前的视频捕捉设备 ...
- 怎样在不对控件类型进行硬编码的情况下在 C#vs 中动态添加控件
文章ID: 815780 最近更新: 2004-1-12 这篇文章中的信息适用于: Microsoft Visual C# .NET 2003 标准版 Microsoft Visual C# .NET ...
随机推荐
- Java: arr==null vs arr.length==0
当 arr 是一个array时,写Java开始的corner case常常会写类似下面的语句: if(arr == null || arr.length == 0){ return 0; } 其实这是 ...
- SQL Server 2008 R2 数据库安装
操作系统 Windows server 2008 R2 数据库 SQL Server 2008 R2 注意:SQL Server 2008 R2需要操作系统首先安装.NET Frame ...
- hadoop wordcount
Mapper // map的数量与数的分片有关系 public class WCMapper extends Mapper<LongWritable, Text, Text, LongWrita ...
- iOS navigationbar 透明
[self.navigationController.navigationBar setTranslucent:YES]; // 为什么要加这个呢,shadowImage 是在ios6.0以后才 ...
- Hint
select /*+ first_rows(20) */ * from t where id<20 --分页 select /*+ all_rows */ * from ...
- linux:指令与档案的搜索
linux下的五种搜索方法(参考自鸟哥linux私房菜基础篇): 一.find :功能很强大,直接搜寻整个硬碟的(速度不是很快,如果系统硬碟较旧的话)----特色:find后面可以接多个目录搜索,它本 ...
- 数据库调优过程(一):SqlServer批量复制(bcp)[C#SqlBulkCopy]性能极低问题
背景 最近一段给xx做项目,这边最头疼的事情就是数据库入库瓶颈问题. 环境 服务器环境:虚拟机,分配32CPU,磁盘1.4T,4T,5T,6T几台服务器不等同(转速都是7200r),内存64G. 排查 ...
- wampserver下修改mysql root用户的登录密码
1.安装好wamp后,运行WampServer程序,进入MYSQL控制台; 2.进入控制台后,提示输入密码(不用输入任何密码,因为密码为空),按回车键进入; 3.输入“USE mysql;”然后回车, ...
- Leetcode: Flatten Nested List Iterator
Given a nested list of integers, implement an iterator to flatten it. Each element is either an inte ...
- smarty -- foreach用法
{foreach},{foreachelse} 用于像访问序数数组一样访问关联数组 {foreach},{foreachelse} {foreach} is used to loop over an ...