#广播 #多媒体 #smpte

bwavfile

Rust Wave File Reader/Writer with Broadcast-WAV, MBWF and RF64 Support

2个稳定版本

2.0.1 2023年6月3日
2.0.0 2023年5月23日
1.1.0 2021年9月28日
1.0.0 2021年6月23日
0.1.5 2020年11月28日

#240 in 音频

Download history 111/week @ 2024-03-11 21/week @ 2024-03-18 12/week @ 2024-03-25 39/week @ 2024-04-01 14/week @ 2024-04-08 11/week @ 2024-04-15 26/week @ 2024-04-22 8/week @ 2024-04-29 7/week @ 2024-05-06 22/week @ 2024-05-13 26/week @ 2024-05-20 16/week @ 2024-05-27 25/week @ 2024-06-03 10/week @ 2024-06-10 9/week @ 2024-06-17 15/week @ 2024-06-24

61 每月下载量
2 个Crates中使用 (通过 ness_stretch_lib)

MIT 许可证

1MB
2K SLoC

Crates.io Crates.io GitHub last commit GitHub Workflow Status

bwavfile

支持Broadcast-WAV、RF64和生产元数据的Rust Wave File Reader/Writer库

功能

bwavfile 提供了用于读取和创建新WAV音频文件的 WaveReader 读取器和 WaveWriter 写入器类型。

WaveReaderWaveWriter 支持

  • 统一接口,用于标准RIFF和RF64/BW64 64位WAV文件。
  • 当使用 WaveWriter 时,波文件在需要时会透明地从RIFF升级到RF64。
  • 解包读取和写入整数PCM和IEEE浮点音频数据格式。
  • 统一接口,用于标准 WaveFormat 和扩展 WaveFormatEx 波数据格式。

该库具有广泛的元数据支持,重点在于电影和视频制作元数据。

  • 广播-Wave元数据扩展,包括长描述、发起人、SMPTE UMID和编码历史。
  • 读取和写入内嵌的iXML和axml/ADM元数据。
  • 读取和写入定时提示和定时提示区域。
  • 多通道、环绕和全景声音频数据描述,包括环绕通道映射、ADM AudioTrackFormatAudioChannelFormatRefAudioPackRef 数据结构。

功能路线图

可能在未来包含的一些功能包括

  • 广播-Wave levl 波形概述数据读取和写入。
  • 采样器和乐器元数据。
  • 性能改进。

使用示例

  • blits 展示了如何使用 WaveWriter 创建具有BLITS对齐音的新文件。
  • wave-inter 使用 WaveReaderWaveWriter 将多个输入的 Wave 文件交织成一个单声部的 Wave 文件。
  • wave-deinter 使用 WaveReaderWaveWriter 将输入的 Wave 文件解交织成多个单声道 Wave 文件。

测试说明

所有集成测试的媒体文件都已以压缩形式提交到仓库中。在运行测试之前,您需要进入 tests 目录并运行 create_test_media.sh 脚本。请注意,其中一个测试文件(RF64 测试用例)的大小超过四吉字节。

依赖项

~3.5MB
~44K SLoC