MediaInfo 在 C# 中动态检查 AudioStreams
MediaInfo check AudioStreams dynamically in C#
我正在使用 MediaInfo.dll 和 Wrapper-Class 来检查音频编解码器的视频文件。
谁能告诉我如何检查文件的音频流数量?
string pfad = Console.ReadLine();
string[] verzeichnisse = Directory.GetDirectories(pfad);
foreach (string verzeichnis in verzeichnisse)
{
string[] dateien = Directory.GetFiles(verzeichnis);
foreach (string datei in dateien)
{
if(datei.ToLower().Contains(".mkv") || datei.ToLower().Contains(".avi") || datei.ToLower().Contains(".mp4"))
{
var mediaInfo = new MediaInfo();
mediaInfo.Open(datei);
// HERE I WANT CHECK FIRST HOW MANY AUDIO-STREAMS THERE ARE
// ???
var audioStream1 = mediaInfo.Get(StreamKind.Audio, 0, "Format");
var audioStream2 = mediaInfo.Get(StreamKind.Audio, 1, "Format");
mediaInfo.Close();
}
}
}
how I can check COUNT of the Audio-Streams of the File?
mediaInfo.Count_Get(StreamKind.Audio);
您可以查看 MediaInfo C# example 以获取更多示例。
另一个例子(你可以在链接的例子中找到它):
mediaInfo.Get(StreamKind.Audio, 0, "Language");
Jérôme,MediaInfo 的开发者。
您可以在此处找到所有 MediaInfo 属性 https://staxrip2.readthedocs.io/en/latest/mediainfo.html
其中有几个不起作用,我不知道这是不是 C# 包装器中的错误。
在您的情况下,您可以分别计算视频流、音频流和字幕流:
mediaInfo.Get(StreamKind.Video, 0, "StreamCount");
mediaInfo.Get(StreamKind.Audio, 0, "StreamCount");
mediaInfo.Get(StreamKind.Text, 0, "StreamCount");
我正在使用 MediaInfo.dll 和 Wrapper-Class 来检查音频编解码器的视频文件。
谁能告诉我如何检查文件的音频流数量?
string pfad = Console.ReadLine();
string[] verzeichnisse = Directory.GetDirectories(pfad);
foreach (string verzeichnis in verzeichnisse)
{
string[] dateien = Directory.GetFiles(verzeichnis);
foreach (string datei in dateien)
{
if(datei.ToLower().Contains(".mkv") || datei.ToLower().Contains(".avi") || datei.ToLower().Contains(".mp4"))
{
var mediaInfo = new MediaInfo();
mediaInfo.Open(datei);
// HERE I WANT CHECK FIRST HOW MANY AUDIO-STREAMS THERE ARE
// ???
var audioStream1 = mediaInfo.Get(StreamKind.Audio, 0, "Format");
var audioStream2 = mediaInfo.Get(StreamKind.Audio, 1, "Format");
mediaInfo.Close();
}
}
}
how I can check COUNT of the Audio-Streams of the File?
mediaInfo.Count_Get(StreamKind.Audio);
您可以查看 MediaInfo C# example 以获取更多示例。
另一个例子(你可以在链接的例子中找到它):
mediaInfo.Get(StreamKind.Audio, 0, "Language");
Jérôme,MediaInfo 的开发者。
您可以在此处找到所有 MediaInfo 属性 https://staxrip2.readthedocs.io/en/latest/mediainfo.html
其中有几个不起作用,我不知道这是不是 C# 包装器中的错误。
在您的情况下,您可以分别计算视频流、音频流和字幕流:
mediaInfo.Get(StreamKind.Video, 0, "StreamCount");
mediaInfo.Get(StreamKind.Audio, 0, "StreamCount");
mediaInfo.Get(StreamKind.Text, 0, "StreamCount");