本文整理汇总了C#中Encoder.EncodeVideo方法的典型用法代码示例。如果您正苦于以下问题:C# Encoder.EncodeVideo方法的具体用法?C# Encoder.EncodeVideo怎么用?C# Encoder.EncodeVideo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Encoder
的用法示例。
在下文中一共展示了Encoder.EncodeVideo方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: StartNewEncode
private void StartNewEncode(string[] filePathes)
{
int count = 0;
var errorVideos = new List<string>();
var allSw = new Stopwatch();
var decodeSw = new Stopwatch();
foreach (string filePath in filePathes)
{
allSw.Restart();
Trace.WriteLine(String.Format("\n-------------Start decode file: {0}-------------\n", filePath));
try
{
var mediaInfo = new MediaInfoWrapper();
var metadataInfo = new VideoMetadataInfo(mediaInfo);
VideoMediaInfo metadata = metadataInfo.GetMetadata(filePath);
var encoder = new Encoder();
WriteFileInfo("N O T H I N G", metadata);
decodeSw.Restart();
encoder.EncodeVideo(metadata, filePath, _destinationPath);
allSw.Stop();
decodeSw.Stop();
WriteFinishProcess(decodeSw.Elapsed, allSw.Elapsed, 0);
count++;
}
catch (MediaFormatException ex)
{
string errorMessage = String.Format("Error File:\t\t{0}.\nError Param:\t\t{1}", filePath, ex.Message);
Trace.WriteLine(String.Format("\n{0}", errorMessage));
errorVideos.Add(errorMessage);
}
catch (ExternalProcessException ex)
{
string errorMessage = String.Format("Error File:\t\t{0}.\nFfmpeg return:\t\t{1}\n{2}", filePath, ex.Result, ex.Arguments);
Trace.WriteLine(errorMessage);
errorVideos.Add(errorMessage);
}
finally
{
Trace.WriteLine(String.Format("\n-------------Finish decode file: {0}-------------\n", filePath));
}
}
WriteFinishInfo(0, count, errorVideos);
}