【问题标题】:What is the maximum and minimum value of android audiotrack, audio type of float?android音轨的最大值和最小值是多少,音频类型是浮点数?
【发布时间】:2019-06-16 04:51:33
【问题描述】:

我需要将左右声道的音频输出到耳机插孔,耳机插孔输出到示波器。我无法使用Float.MAX_VALUEFloat.MIN_VALUE 获得正确的音频波形。通常 16 位音频最大/最小值是一个短类型,值为 +/-32767。所以你可以用Short.MAX_VALUEShort_MIN_VALUE 赋值。但目前我的音频是浮点类型,即AudioFormat.ENCODING_PCM_FLOAT,使用Float.MAX_VALUEFloat.MIN_VALUE 无法在示波器中获得正确的音频波形。实际的音频波形前后会有0.4毫秒的噪声,但是当我在3.5f或-3.5f取浮点数时,波形的形状看起来是正确的,但没有达到最大值。那么float类型的最大和最小音频值是多少呢?

实际的音频波形前后会有 0.4 毫秒的噪声。

正确的波形应该是这样的形状。如果设置为 3.5f/-3.5f,则形状正确但不是最大值。

【问题讨论】:

    标签: android audio waveform audiotrack


    【解决方案1】:

    来自docs

    ...如果音频管道中的所有增益小于或等于单位 (1.0f),并且在没有可以增加能量的后处理效果,例如混响。为了方便使用具有非统一增益的滤波器计算样本的应用程序,允许样本值超出标称范围 +3 dB。然而,这些值最终可能会受到限制或削减,具体取决于音频路径中的各种增益和后续处理。因此,鼓励应用程序提供标称范围内的样本值。

    功率增加 3dB 对应于电压增加 sqrt(2),或大约 1.41。因此,根据文档,您的设备可能能够处理 -1.41 到 1.41,但请注意有关剪辑的警告。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-17
      • 2011-02-28
      相关资源
      最近更新 更多