gpt4 book ai didi

audio - pyaudio 字节数据到 librosa 浮点时间序列

转载 作者:行者123 更新时间:2023-12-01 10:05:08 25 4
gpt4 key购买 nike

当使用 pyaudio 和 paInt16 录制音频时,它给了我表示为两个字节的 16 位整数。经过一些研究,我得出结论,它必须在 -32768 到 32767 之间。

我将音频保存为 wav 文件并使用 librosa.core.load 加载它.
我确实检索了浮点值 * 32767 并查看它是否生成原始的 16 位整数,但根本不匹配。

我的问题是

  • 这种不匹配来自哪里?
  • 原始的 16 位整数数据代表频率吗?
  • librosa 文档状态加载函数返回 floating point time series .你如何从原始的 16 位整数计算这个值?
  • 最佳答案

    在研究和探索 librosa 代码后,这是我的发现。

  • 不匹配来自 wav 字节数组是小端的事实
  • 该表示被称为 Pulse-code modulation(PCM) .每个样本(单个整数)表示缩放到预定位范围(通常为 16 位)范围内的音频幅度。引用 audio bit depth详情
  • 鉴于 PCM 是 16 位表示,每个样本的范围为 [-32768, 32767]。 librosa 简单地将 16 位转换为有符号短整型并除以 32768(不是 32767!)以缩小到 [-1, 1] 范围。请引用my sample code用于精确转换
  • 关于audio - pyaudio 字节数据到 librosa 浮点时间序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53462062/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com