2个稳定版本
2.0.1 | 2023年6月3日 |
---|---|
2.0.0 | 2023年5月23日 |
1.1.0 |
|
1.0.0 |
|
0.1.5 |
|
#240 in 音频
61 每月下载量
在 2 个Crates中使用 (通过 ness_stretch_lib)
1MB
2K SLoC
bwavfile
支持Broadcast-WAV、RF64和生产元数据的Rust Wave File Reader/Writer库
功能
bwavfile 提供了用于读取和创建新WAV音频文件的 WaveReader
读取器和 WaveWriter
写入器类型。
WaveReader
和 WaveWriter
支持
- 统一接口,用于标准RIFF和RF64/BW64 64位WAV文件。
- 当使用
WaveWriter
时,波文件在需要时会透明地从RIFF升级到RF64。 - 解包读取和写入整数PCM和IEEE浮点音频数据格式。
- 统一接口,用于标准
WaveFormat
和扩展WaveFormatEx
波数据格式。
该库具有广泛的元数据支持,重点在于电影和视频制作元数据。
- 广播-Wave元数据扩展,包括长描述、发起人、SMPTE UMID和编码历史。
- 读取和写入内嵌的iXML和axml/ADM元数据。
- 读取和写入定时提示和定时提示区域。
- 多通道、环绕和全景声音频数据描述,包括环绕通道映射、ADM
AudioTrackFormat
、AudioChannelFormatRef
和AudioPackRef
数据结构。
功能路线图
可能在未来包含的一些功能包括
- 广播-Wave
levl
波形概述数据读取和写入。 - 采样器和乐器元数据。
- 性能改进。
使用示例
- blits 展示了如何使用
WaveWriter
创建具有BLITS对齐音的新文件。 - wave-inter 使用
WaveReader
和WaveWriter
将多个输入的 Wave 文件交织成一个单声部的 Wave 文件。 - wave-deinter 使用
WaveReader
和WaveWriter
将输入的 Wave 文件解交织成多个单声道 Wave 文件。
测试说明
所有集成测试的媒体文件都已以压缩形式提交到仓库中。在运行测试之前,您需要进入 tests
目录并运行 create_test_media.sh
脚本。请注意,其中一个测试文件(RF64 测试用例)的大小超过四吉字节。
依赖项
~3.5MB
~44K SLoC