美文网首页
简析PCM与WAVE格式的关系

简析PCM与WAVE格式的关系

作者: 刘小白DOER | 来源:发表于2022-05-04 23:53 被阅读0次

    今天解决了以前的一个小问题。VOIP语音抓包、解码与带宽计算 - 简书 (jianshu.com)在以前的实践中,笔者想到把G771A编码后的pcm语音再次转换为16bit的数据,然后回放语音时有很多背景噪声,当时一直没有找到答案,一直搁置没有解决。在这段时间的wave文件的操作中找到灵感,然后基于python来完成这个疑问的解答。

    wav存储的一般是解码后为[-1, 1]的float数据,文件头有44个字节记录文件的采样率、长度等等信息。pcm存储的是int型整数,不含任何采样率相关信息。Python 播放 PCM 音频文件 里面有关于wave与pcm格式的详细说明。那么wav与pcm之间的转换方法如下:

    wav转pcm:将文件头去掉,数据转成int型即可。

    pcm转wav:Python 中内置了 wave 库给音频数据加上一个头部信息。  ffmpeg工具也可以完成。下面是基于python的格式转换函数pcm2wav,同时利用PyAudio可以 直接播放 PCM 音频。

        联想到神经网络的音频处理tensorflow-io库,tensorflow-io 软件包提供了不少与音频相关的 API。音频数据准备和增强 中,AudioIOTensor 延迟加载张量返回的就是int16 类型的samples,可以通过Audio(audio_tensor.numpy(), rate=audio.rate.numpy()) 来播放。除于32768之后,将张量转换为浮点数并在计算图中显示音频片段。

    那么AudioIOTensor 直接返回的就是PCM数据,除于32768之后再添加头部就是wave格式数据。

相关文章

  • 简析PCM与WAVE格式的关系

    今天解决了以前的一个小问题。VOIP语音抓包、解码与带宽计算 - 简书 (jianshu.com)[https...

  • 史上全最的WAV格式详解

    概述   WAV即WAVE,是经典的Windows音频数据封装格式,由Microsoft开发。数据本身格式为PCM...

  • PCM音频数据

    目录 什么是PCM? PCM数据格式 FFmpeg支持的PCM数据格式 FFmpeg中Packed和Planar的...

  • PCM转WAV

    一、WAVE 文件格式介绍 WAVE 文件是基于 Microsoft RIFF 标准的文件格式。RIFF 格式文件...

  • PCM WAV

    pcm(不压缩),也称为raw格式。音频输入最原始的格式,不用再解码。 wav(不压缩,pcm编码):在pcm文件...

  • iOS Audio Queue播放PCM音频流

    PCM音频流播放主要步骤如下: 1、确定文件格式 播放PCM音频流前,我们首先需要确定播放的PCM音频的格式信息,...

  • iOS音频格式之间的相互转化

    首先介绍一下常用的音频文件格式 PCM格式: PCM属于编码格式,PCM是经过话筒后直接得到的未经压缩的数据流数据...

  • iOS音频(基础篇)-常用的音频格式

    PCM格式 PCM属于编码格式,PCM是经过话筒后直接得到的未经压缩的数据流数据的大小 = 采样率 * 采样位数 ...

  • iOS PCM转成WAV

    最近做录音的时候为了和安卓端统一,需要将pcm格式的录音文件转为wav格式的文件。 背景知识 PCM PCM (P...

  • FFmpeg录制音频PCM,WAV, PCM 转WAV

    音频录制与播放命令 录制 播放播放PCM需要指定相关参数: ar:采样率 ac:声道数 f:采样格式 PCM音频录...

网友评论

      本文标题:简析PCM与WAVE格式的关系

      本文链接:https://www.haomeiwen.com/subject/gkxnyrtx.html