FFMpegCore/FFMpegCore.Test/Resources/VideoLibrary.cs

52 lines
2.4 KiB
C#
Raw Normal View History

2020-10-25 17:16:47 +01:00
using System;
using System.IO;
using FFMpegCore.Enums;
2019-02-08 11:19:40 +01:00
2019-03-03 00:33:00 +01:00
namespace FFMpegCore.Test.Resources
2019-02-08 11:19:40 +01:00
{
public enum AudioType
{
Mp3
}
public enum ImageType
{
Png
}
public static class VideoLibrary
{
2020-10-25 17:11:52 +01:00
public static readonly FileInfo LocalVideo = new FileInfo($".{Path.DirectorySeparatorChar}Resources{Path.DirectorySeparatorChar}input_3sec.mp4");
public static readonly FileInfo LocalVideoWebm = new FileInfo($".{Path.DirectorySeparatorChar}Resources{Path.DirectorySeparatorChar}input_3sec.webm");
public static readonly FileInfo LocalVideoAudioOnly = new FileInfo($".{Path.DirectorySeparatorChar}Resources{Path.DirectorySeparatorChar}input_audio_only_10sec.mp4");
public static readonly FileInfo LocalVideoNoAudio = new FileInfo($".{Path.DirectorySeparatorChar}Resources{Path.DirectorySeparatorChar}input_video_only_3sec.mp4");
public static readonly FileInfo LocalAudio = new FileInfo($".{Path.DirectorySeparatorChar}Resources{Path.DirectorySeparatorChar}audio.mp3");
public static readonly FileInfo LocalCover = new FileInfo($".{Path.DirectorySeparatorChar}Resources{Path.DirectorySeparatorChar}cover.png");
public static readonly FileInfo ImageDirectory = new FileInfo($".{Path.DirectorySeparatorChar}Resources{Path.DirectorySeparatorChar}images");
public static readonly FileInfo ImageJoinOutput = new FileInfo($".{Path.DirectorySeparatorChar}Resources{Path.DirectorySeparatorChar}images{Path.DirectorySeparatorChar}output.mp4");
2019-02-08 11:19:40 +01:00
public static string OutputLocation(this FileInfo file, ContainerFormat type)
2019-02-08 11:19:40 +01:00
{
return OutputLocation(file, type.Extension, "_converted");
2019-02-08 11:19:40 +01:00
}
2020-05-08 11:07:51 +02:00
public static string OutputLocation(this FileInfo file, AudioType type)
2019-02-08 11:19:40 +01:00
{
return OutputLocation(file, type.ToString(), "_audio");
2019-02-08 11:19:40 +01:00
}
2020-05-08 11:07:51 +02:00
public static string OutputLocation(this FileInfo file, ImageType type)
2019-02-08 11:19:40 +01:00
{
return OutputLocation(file, type.ToString(), "_screenshot");
2019-02-08 11:19:40 +01:00
}
public static string OutputLocation(this FileInfo file, string type, string keyword)
2019-02-08 11:19:40 +01:00
{
string originalLocation = file.Directory.FullName,
outputFile = file.Name.Replace(file.Extension, keyword + "." + type.ToLowerInvariant());
2019-02-08 11:19:40 +01:00
2020-10-25 17:16:47 +01:00
return $"{originalLocation}{Path.DirectorySeparatorChar}{Guid.NewGuid()}_{outputFile}";
2019-02-08 11:19:40 +01:00
}
}
}