The MediaInfoLib .NET Wrapper.
$ dotnet add package MediaInfoDLLMinimal MediaInfo .NET APIs wrapped from MediaArea.net.
Support for Windows Vista, 7, 8, 10, 11 with x86, x64, ARM64.
using MediaInfoLib;
using MediaInfo lib = new();
lib.Open(@"C:\media.mp4");
Console.WriteLine(lib.Inform());
Useful options.
using MediaInfoLib;
using MediaInfo lib = new();
lib.Open(@"C:\media.mp4");
lib.Option("Complete", "1"); // Set complete output.
lib.Option("Inform", Inform_Format.HTML.ToString()); // Set format to HTML.
lib.Option("Language", Language_ISO639.ChineseSimplified.ToIso639()); // Set language to Chinese.
Console.WriteLine(lib.Inform());
using MediaInfoLib;
using MediaInfo lib = new();
bool hasAudio = lib.WithOpen(fileName).Count_Get(StreamKind.Audio) > 0;
Console.WriteLine(hasAudio);
using MediaInfoLib;
using MediaInfo lib = new();
lib.Open(fileName);
_ = double.TryParse(lib.Get(StreamKind.Audio, 0, "BitRate"), out double bitRate);
Console.WriteLine(bitRate);
How to include the all MediaInfo.dll runtime native libraries in .csproj:
<ItemGroup>
<Content Include="$(NuGetPackageRoot)\MediaInfoDLL\25.7.0\lib\netstandard2.0\x64\MediaInfo.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<DestinationFolder>$(OutDir)MediaInfo-x64\</DestinationFolder>
<Link>runtime-x64\MediaInfo.dll</Link>
</Content>
<Content Include="$(NuGetPackageRoot)\MediaInfoDLL\25.7.0\lib\netstandard2.0\x86\MediaInfo.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<DestinationFolder>$(OutDir)MediaInfo-x86\</DestinationFolder>
<Link>runtime-x86\MediaInfo.dll</Link>
</Content>
<Content Include="$(NuGetPackageRoot)\MediaInfoDLL\25.7.0\lib\netstandard2.0\arm64\MediaInfo.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<DestinationFolder>$(OutDir)MediaInfo-ARM64\</DestinationFolder>
<Link>runtime-arm64\MediaInfo.dll</Link>
</Content>
</ItemGroup>
https://github.com/MediaArea/MediaInfoLib/blob/master/Source/MediaInfo/MediaInfo_Config.h
https://github.com/MediaArea/MediaInfoLib/blob/master/Source/MediaInfo/File__Analyse_Automatic.h
https://github.com/MediaArea/MediaInfo/tree/master/Source/Resource/Plugin/Language
https://github.com/MediaArea/MediaInfo/blob/master/Source/Resource/Language.csv
MediaInfoLib - https://github.com/MediaArea/MediaInfoLib
Copyright (c) MediaArea.net SARL. All Rights Reserved.
This program is freeware under BSD-2-Clause license conditions.
See License.html for more information