簡體   English   中英

如何以編程方式確定WAV文件的采樣率和比特率?

[英]How can I programmatically determine the sample rate and bit rate of a WAV file?

用戶將WAV文件上傳到我的服務。 我需要以編程方式知道WAV文件的比特率和采樣率。

我該怎么做? 最好在Windows上,盡管Unix工具也可以。 命令行工具會很方便。

參見MediaInfo 該工具提供了圖形用戶界面,命令行界面和庫(.dll / .so / .dylib)。 我更喜歡使用庫。

如果您想嘗試CLI,請參見以下命令行示例。

MediaInfo.exe "--Inform=Audio;" --Output=XML "test.wav" --logfile=result.xml

然后我得到了result.xml。

<?xml version="1.0" encoding="UTF-8"?>
<Mediainfo version="0.7.61">
<File>
<track type="General">
<Complete_name>test.wav</Complete_name>
<Format>Wave</Format>
<File_size>14.2 KiB</File_size>
<Duration>659ms</Duration>
<Overall_bit_rate>177 Kbps</Overall_bit_rate>
</track>

<track type="Audio">
<ID>0</ID>
<Format>PCM</Format>
<Format_settings__Endianness>Little</Format_settings__Endianness>
<Codec_ID>1</Codec_ID>
<Duration>659ms</Duration>
<Bit_rate>176.4 Kbps</Bit_rate>
<Channel_s_>1 channel</Channel_s_>
<Sampling_rate>22.05 KHz</Sampling_rate>
<Bit_depth>8 bits</Bit_depth>
<Stream_size>14.2 KiB (100%)</Stream_size>
</track>

</File>
</Mediainfo>

只需解析此文件,然后找到字符串<Sampling_rate>22.05 KHz</Sampling_rate>

http://sox.sourceforge.net/下載Sox

跑:

sox --info filename.wav

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM