PCM格式音频数据的读取

PCM格式音频文件比方方式采用Audacity软件播放。具体实现过程:打开软件–>导入–>原始数据,修改编码:Signed 16bit PCM;字节序:小尾端,声道:单声道和双声道(立体声);采样率根据实际填写,快鱼的拾音器的采样率为16000Hz

python实现PCM格式音频文件的加载

PCM里仅保留了数据,没有采样率值和通道值。采样率是16bit、32bit float等参数采样。
import array
import os
from matplotlib import pyplot

fileName = ‘e:/music/qianqian.pcm’ # 2 channel, 16 bit per sample
file = open(fileName, ‘rb’)
base = 1 / (1<<15)

shortArray = array.array(‘h’) # int16
size = int(os.path.getsize(fileName) / shortArray.itemsize)
count = int(size / 2)
shortArray.fromfile(file, size) # faster than struct.unpack
file.close()
leftChannel = shortArray[::2]
rightChannel = shortArray[1::2]
上述代码参考
**
我的代码如下:
**
def read_audio(path, target_fs=None, data_type=np.int16):
#(audio, fs) = soundfile.read(path)
f = open(path, “rb”)
#f.seek(0)
#f.read(44)
audio = np.fromfile(f, dtype = data_type)
‘’‘if audio.ndim > 1:
audio = np.mean(audio, axis=1)
if target_fs is not None and fs != target_fs:
audio = librosa.resample(audio, orig_sr=fs, target_sr=target_fs)
fs = target_fs’’’
return audio

PCM格式音频数据的读取相关推荐

  1. Android 音视频开发(一):PCM 格式音频的播放与采集

    什么是 PCM 格式 声音从模拟信号转化为数字信号的技术,经过采样.量化.编码三个过程将模拟信号数字化. 采样 顾名思义,对模拟信号采集样本,该过程是从时间上对信号进行数字化,例如每秒采集 44100 ...

  2. window API播放pcm格式音频文件,函数waveOutOpen等

    之前在我的博客中有一篇关于编写录音器的代码,可保存为pcm和wav格式,说白了其实两者是一个东西,只不过wav比pcm多了一个文件头,这个文件头一共占了44个字节.此处这个不是重点,重点是如何编写程序 ...

  3. AudioTrack播放pcm格式音频

    AudioTrack播放pcm格式音频 package com.zero.demo;import android.content.Context; import android.media.Audio ...

  4. 在Python中FITS格式文件数据的读取 (转载)

    在Python中FITS格式文件数据的读取 (转载) 前言 \space\space\space\space     FITS(Flexible Image Transport System)格式文件 ...

  5. Java实现PCM格式音频转MP3或WAV

    最近做语音合成的项目,需要把PCM格式的音频文件转换成MP3或WAV,记录一下. Java实现的PCM格式音频文件转换MP3格式 import java.io.FileInputStream; imp ...

  6. 基于C的PCM音频数据的读取、处理与写入(一)

    PCM音频数据,是模拟音频信号经过数模转换后直接形成的二进制序列,是一种罕见的音频文件格式,因此在对pcm文件进行读写的时候,要选用以二进制的形式打开. 此次读写的PCM文件,单声道,采样率是16KH ...

  7. 【转】PCM Audio,PCM格式音频文件 详解

    PCM文件:模拟音频信号经模数转换(A/D变换)直接形成的二进制序列,该文件没有附加的文件头和文件结束标志.Windows的Convert工具可以把PCM音频格式的文件转换成Microsoft的WAV ...

  8. STM32最小板完成音频数据的读取与DAC播放

    目录 一.Flash简单介绍 1.Flash操作流程与操作选址 1.1.Flash操作流程 1.2 .如何查找并选定要写入Flash十六进制地址 2.Flash读写等相关原理 2.1.闪存的读取 2. ...

  9. python获取mp3音频数据,python 读取音频文件的详细信息

    有一项测试的需求是判断录像是否和预期一致,检查项是:分辨率.录像时长等内容 文件的详细信息.png os模块有一个stat()方法 st_mode: inode 保护模式 st_ino: inode ...

  10. 使用FFmpeg将S16格式音频数据重采样为FLTP格式

    代码对一些数据没做判断,仅仅是做个备忘!请谨慎参考! #include <libavutil/opt.h> #include <libavutil/samplefmt.h> # ...

最新文章

  1. 感受 lambda 之美!
  2. 有一种爱,永远也无法逾越
  3. mysql select 使用_mysql select简单用法
  4. iPhone的录音和播放
  5. Mac下Nginx、PHP、MySQL 和 PHP-fpm安装配置
  6. 如果没有Visual Studio 2015,我们如何创建.NET Core项目 ?
  7. 用python绘制心形_如何利用Python绘制一个爱心
  8. 使用Jenkins搭建持续集成环境的方法(一)
  9. iOS安装CocoaPods详细过程
  10. HanLP: Han Language Processing
  11. java学习(eclipse环境的使用)
  12. 设计模式-Builder模式详解
  13. java支付宝扫码支付,简单生成二维码方法
  14. 我对SAP培训的理解(转)
  15. Flutter随记四:null safe之 ??= 和??和 ?使用区别
  16. Google I/O 2021: 在重要时刻提供帮助
  17. 问题:控制台报错style-helper.mjs?d002:125 Uncaught (in promise) TypeError: Cannot read properties
  18. C语言--第二篇类型、运算符与表达式
  19. 使用 GVM 工具管理 Go 版本
  20. 没有项目经验?软件测试简历项目经验怎么写...

热门文章

  1. UKEY开发 用户登录流程
  2. 奇妙的数字 小明发现了一个奇妙的数字。它的平方和立方正好把0~9的10个数字每个用且只用了一次。你能猜出这个数字是多少吗?
  3. 2010年的读书计划
  4. 查计算机硬盘序列号6,Win7电脑查看硬盘序列号的方法
  5. javaweb小区物业管理系统设计与实现(毕业论文+程序设计+数据库文件)
  6. 华为数通笔记-数通基本概念
  7. ThinkPad P73 拆机清灰日志
  8. 济南北大青鸟2013春季百人就业工程计划
  9. 东华大学python题库_2020尔雅纺纱学(东华大学)完整答案
  10. 基于Spring+Struts2+Hibernate开发易买网商城系统