TVideoGrabber教程:如何重新编码(1)

原创|使用教程|编辑:郝浩|2013-08-26 10:19:56.000|阅读 380 次

概述:TVideoGrabber是一款支持包括C#、.NET、VB.NET、C++、Delphi、C++Builder和ActiveX平台在内的视频处理控件,不仅可以捕捉视频,还可以作为多媒体播放器。本文将详细说明TVideoGrabber如何重新编码音频、视频剪辑。

# 31款JAVA开发必备控件和工具 # 开发软/控件产品年终优惠

相关链接:

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,否则重新编码进程将会在完成前被打断。

比如:

VideoGrabber1.Reencoding_SourceVideoClip = "MyVideoClipToReencode.avi" 
VideoGrabber1.Reencoding_NewVideoClip = "MyReencodedVideoClip.wmv"
VideoGrabber1.Reencoding_WMVOutput = true // output clip is wmv
VideoGrabber1.Reencoding_Method = rm_ASF
VideoGrabber1.Reencoding_StartFrame = -1 // -1 = beginning of the clip. E.g. if you set 100 it starts at the frame #100
VideoGrabber1.Reencoding_StopFrame = -1 // -1 = beginning of the clip. E.g. if you set 500 it will stop when the frame #500 is reached
VideoGrabber1.Reencoding_StartTime = -1 // -1 = end of the clip. E.g. if you set 50000000 it will start at 5 seconds
VideoGrabber1.Reencoding_StopTime = -1 // -1 = end of the clip. E.g. if you set 100000000 it will stop at 10 seconds
VideoGrabber1.Reencoding_IncludeAudioStream = true // if audio stream needed in the reencoded clip
VideoGrabber1.Reencoding_IncludeVideoStream = true // if video stream needed in the reencoded clip
VideoGrabber1.Reencoding_UseAudioCompressor = false
VideoGrabber1.Reencoding_UseVideoCompressor = false
VideoGrabber1.Reencoding_UseFrameGrabber = true
VideoGrabber1.StartReencoding // from now the progress will be returned periodically by the OnReencodingProgress event.end;

 

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

>>>TVideoGrabber 下载


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至hey@evget.com

文章转载自:慧都控件

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
在线咨询
联系我们
TOP
在线客服系统
live chat