如何检查音频文件的采样率?
音频采样率表示每秒对声音信号的采样次数,直接影响音频质量和存储需求。以下分平台/工具介绍查看方法:
1. Python
方法1:使用 librosa
库
安装库:pip install librosa
代码示例:
Python
import librosa audio_path = "test.wav" signal, sr = librosa.load(audio_path, sr=None) # sr=None 表示保留原始采样率[^2] print("采样率:", sr) # 输出如 44100
方法2:使用 soundfile
库
安装库:pip install soundfile
代码示例:
Python
import soundfile as sf audio_path = "test.wav" data, sr = sf.read(audio_path, always_2d=True) # 读取文件并获取采样率[^1] print("采样率:", sr)
方法3:使用 wave
模块(仅限WAV格式)
无需安装额外库:
Python
import wave with wave.open("test.wav", "rb") as wav_file: sr = wav_file.getframerate() # 直接获取采样率 print("采样率:", sr)
2. FFmpeg(命令行工具)
安装后执行:
Bash
ffprobe -v error -show_entries stream=sample_rate -of default=noprint_wrappers=1:nokey=1 input.mp3
输出直接显示采样率,例如 16000
3。
3. Audacity(图形化工具)
- 导入音频文件
- 左下角轨道信息栏显示采样率(如 44100 Hz)1。
4. Praat(语音分析工具)
- 打开音频文件
- 选择声音对象后点击 Info,查看 Sampling frequency 字段3。
5. Java
使用 javax.sound.sampled
包:
Java
import javax.sound.sampled.*; public class ReadSampleRate { public static void main(String[] args) throws Exception { AudioInputStream audioStream = AudioSystem.getAudioInputStream(new File("test.wav")); AudioFormat format = audioStream.getFormat(); float sampleRate = format.getSampleRate(); // 获取采样率[^4] System.out.println("采样率: " + sampleRate); } }
其他工具
- MATLAB:
info = audioinfo('test.wav'); disp(info.SampleRate);
- R语言: 使用
tuneR
包的readWave()
函数。