首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MediaInfo在C#中动态检查AudioStreams

MediaInfo在C#中动态检查AudioStreams
EN

Stack Overflow用户
提问于 2020-07-02 19:04:05
回答 2查看 584关注 0票数 3

我使用MediaInfo.dll和包装类来检查音频编解码器的视频文件.

有人能告诉我如何检查文件的音频流的计数吗?

代码语言:javascript
复制
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();

                }
            }
        }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-07-02 19:24:50

如何检查文件的音频流计数?

代码语言:javascript
复制
mediaInfo.Count_Get(StreamKind.Audio);

您可以查看MediaInfo C#示例以获得更多的示例。

另一个示例(可以在链接的示例中找到它):

代码语言:javascript
复制
mediaInfo.Get(StreamKind.Audio, 0, "Language");

Jér me,MediaInfo的开发者。

票数 1
EN

Stack Overflow用户

发布于 2021-06-18 01:18:25

您可以在这里找到所有的MediaInfo属性,https://staxrip2.readthedocs.io/en/latest/mediainfo.html

其中有几个不能工作,我不知道它是否是C#包装器中的一个bug。

在您的示例中,您可以通过以下方式分别计算视频、音频和字幕流:

代码语言:javascript
复制
mediaInfo.Get(StreamKind.Video, 0, "StreamCount");
mediaInfo.Get(StreamKind.Audio, 0, "StreamCount");
mediaInfo.Get(StreamKind.Text, 0, "StreamCount");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62703365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档