public void FindWindowsBinaries3() { var fileSystem = new MockFileSystem(new Dictionary <string, MockFileData> { { Path.Combine(assemblyDirectory, "avutil-56.dll"), new MockFileData("avutil-56.dll") }, { Path.Combine(assemblyDirectory, "libavutil.so.56"), new MockFileData("libavutil.so.56") }, { Path.Combine(assemblyDirectory, "libavutil.56.dylib"), new MockFileData("libavutil.56.dylib") } }); var windowsBinaries = new WindowsBinaries(fileSystem); Assert.Equal(Path.GetFullPath(Path.Combine(assemblyDirectory, "avutil-56.dll")), Path.GetFullPath(windowsBinaries.FindFFmpegLibrary("avutil", 56))); }
public void FindWindowsBinaries2() { var fileSystem = new MockFileSystem(new Dictionary <string, MockFileData> { { Path.Combine(assemblyDirectory, "runtimes", "win7-x86", "native", "avutil-56.dll"), new MockFileData("avutil-56.dll") }, { Path.Combine(assemblyDirectory, "runtimes", "win7-x64", "native", "avutil-56.dll"), new MockFileData("avutil-56.dll") }, { Path.Combine(assemblyDirectory, "runtimes", "linux-x64", "native", "libavutil.so.56"), new MockFileData("libavutil.so.56") }, { Path.Combine(assemblyDirectory, "runtimes", "osx-x64", "native", "libavutil.56.dylib"), new MockFileData("libavutil.56.dylib") } }); var runtime = "win7-x86"; if (Environment.Is64BitProcess) { runtime = "win7-x64"; } var windowsBinaries = new WindowsBinaries(fileSystem); Assert.Equal(Path.GetFullPath(Path.Combine(assemblyDirectory, "runtimes", runtime, "native", "avutil-56.dll")), Path.GetFullPath(windowsBinaries.FindFFmpegLibrary("avutil", 56))); }
static FFmpegLoader() { CurrentOS = GetCurrentOS(); switch (CurrentOS) { case OperatingSystem.Windows: Binaries = new WindowsBinaries(); break; case OperatingSystem.Linux: Binaries = new LinuxBinaries(); break; case OperatingSystem.OSX: Binaries = new MacOsBinaries(); break; default: Binaries = null; break; } }