Update README.md
This commit is contained in:
35
README.md
35
README.md
@@ -10,8 +10,41 @@
|
||||
安装poetry后,简单使用```poetry install```即可安装依赖
|
||||
|
||||
## 使用
|
||||
###寻找一个格式的子类型:
|
||||
本例程使用[sounddevice](https://python-sounddevice.readthedocs.io/en/0.4.4/usage.html)来对音频做播放或录制,使用[soundFile](https://python-soundfile.readthedocs.io/en/0.10.3post1/)来解析音频。
|
||||
|
||||
测试例程请在虚拟环境下执行```src\example.py```即可
|
||||
|
||||
### 项目结构
|
||||
|
||||
```
|
||||
pxua216mb-exp
|
||||
├── recorded_audio
|
||||
│ └── testfile.raw
|
||||
├── src
|
||||
│ ├── example.py
|
||||
│ └── settings.py
|
||||
├── test_audio
|
||||
│ ├── test_audio_16k.raw
|
||||
│ └── test_audio_48k.raw
|
||||
├── poetry.lock
|
||||
├── pyproject.toml
|
||||
└── README.md
|
||||
```
|
||||
|
||||
### 解释项目结构
|
||||
|
||||
- `/recorded_audio/` - 包含通过`exmaple.py`生成的音频记录文件,是音频输出的默认位置
|
||||
- `/src/` - 包含项目源码,`example.py`包含了所有示例,包括主进程和几个示例函数在内,`settings.py`包括了一些设备的快速定义,这些定义将会在`example.py`中被使用。在测试时,您应当执行example.py
|
||||
- `/test_audio/` - 包含了所有的测试音频,`test_audio_16k.raw`是采样率16k,双声道,16bit位深的音频,`test_audio_48k.raw`是采样率48k,双声道,16bit位深的音频
|
||||
- `poetry.lock` - poetry的标记文件,此文件不应由您手动修改
|
||||
- `pyproject.toml` - 本项目通过poetry进行版本控制,您可以在此处增加依赖项或更新依赖
|
||||
|
||||
### 寻找一个音频格式的子类型:
|
||||
|
||||
```python
|
||||
>>> import soundfile as sf
|
||||
>>> sf.available_subtypes('RAW')
|
||||
>>> {'PCM_S8': 'Signed 8 bit PCM', 'PCM_16': 'Signed 16 bit PCM', 'PCM_24': 'Signed 24 bit PCM', 'PCM_32': 'Signed 32 bit PCM', 'PCM_U8': 'Unsigned 8 bit PCM', 'FLOAT': '32 bit float', 'DOUBLE': '64 bit float', 'ULAW': 'U-Law', 'ALAW': 'A-Law', 'GSM610': 'GSM
|
||||
6.10', 'DWVW_12': '12 bit DWVW', 'DWVW_16': '16 bit DWVW', 'DWVW_24': '24 bit DWVW', 'VOX_ADPCM': 'VOX ADPCM'}
|
||||
|
||||
```
|
||||
@@ -20,7 +20,7 @@ def select_device(device_type='output'):
|
||||
|
||||
|
||||
def play_pcm_raw():
|
||||
# path = '../test_audio/test_audio_48k.raw'
|
||||
# path = '../test_audio/test_audio_48k.raw' # 测试播放48k音频
|
||||
path = '../recorded_audio/testfile.raw' # 此处的.raw文件即为pcm格式音频
|
||||
# 解析pcm文件并存放到数据流中
|
||||
# 需要4个变量:文件路径,音频通道数,采样率,音频子类型
|
||||
@@ -55,7 +55,7 @@ if __name__ == '__main__':
|
||||
output_channels = settings.MAX_OUTPUT_CHANNEL
|
||||
|
||||
device_list = sd.query_devices() # 获取电脑上的所有音频设备
|
||||
recording()
|
||||
recording() # 播放音频
|
||||
while True:
|
||||
play_pcm_raw()
|
||||
user_input = input("输入1继续播放,输入2退出测试")
|
||||
|
||||
Reference in New Issue
Block a user