【问题标题】:Testing an Audio File Using C#使用 C# 测试音频文件
【发布时间】:2014-07-13 06:34:38
【问题描述】:

我想编写一个脚本来测试特定的 .WAV 文件并确定它是否被正常录制。我的意思是,我要让多台计算机同时录制相同的输入,保存它们的音频文件,然后我需要看看哪些计算机由于那里的任何原因无法录制它可能是。

我正在考虑检查音频文件的大小,但我不确定是否可以说某台在其输出文件中没有实际录音的 PC 未通过测试,而另一台 PC 已通过它,仅基于输出文件的大小。

我希望我对我的问题足够清楚。最好的问候。

【问题讨论】:

    标签: c# .net audio audio-recording


    【解决方案1】:

    您可以查询文件属性的采样率,采样率越高质量越好。像这样,取自这里:Whant to check all kind of audio & video quality in asp.net C#

        using WMPLib; 
    
        WindowsMediaPlayerClass wmp = new WindowsMediaPlayerClass();
        IWMPMedia mediaInfo = wmp.newMedia("myfile.wmv"); 
    
        // duration
        Console.WriteLine("Duration = " + mediaInfo.duration);
    
        // write named attributes
        for (int i=0; i<mediaInfo.attributeCount; i++) 
        {
          Console.WriteLine(mediaInfo.getAttributeName(i) + " = " +  m    ediaInfo.getItemInfo(mediaInfo.getAttributeName(i)) );
        }
    

    或者使用第三部分工具/库来测试音质

    【讨论】:

    • 似乎从 WAV 文件中检索到的唯一属性是它的持续时间。另一方面,在另一个 MP3 文件中,我设法检索到更多的属性,尽管它们似乎都没有帮助我或与我的情况有关。
    【解决方案2】:

    NAudio 是我的解决方案。我强烈建议在类似情况下使用这个库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-09-06
      • 2018-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-30
      相关资源
      最近更新 更多