PCM格式音频数据的读取
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格式音频数据的读取相关推荐
- Android 音视频开发(一):PCM 格式音频的播放与采集
什么是 PCM 格式 声音从模拟信号转化为数字信号的技术,经过采样.量化.编码三个过程将模拟信号数字化. 采样 顾名思义,对模拟信号采集样本,该过程是从时间上对信号进行数字化,例如每秒采集 44100 ...
- window API播放pcm格式音频文件,函数waveOutOpen等
之前在我的博客中有一篇关于编写录音器的代码,可保存为pcm和wav格式,说白了其实两者是一个东西,只不过wav比pcm多了一个文件头,这个文件头一共占了44个字节.此处这个不是重点,重点是如何编写程序 ...
- AudioTrack播放pcm格式音频
AudioTrack播放pcm格式音频 package com.zero.demo;import android.content.Context; import android.media.Audio ...
- 在Python中FITS格式文件数据的读取 (转载)
在Python中FITS格式文件数据的读取 (转载) 前言 \space\space\space\space FITS(Flexible Image Transport System)格式文件 ...
- Java实现PCM格式音频转MP3或WAV
最近做语音合成的项目,需要把PCM格式的音频文件转换成MP3或WAV,记录一下. Java实现的PCM格式音频文件转换MP3格式 import java.io.FileInputStream; imp ...
- 基于C的PCM音频数据的读取、处理与写入(一)
PCM音频数据,是模拟音频信号经过数模转换后直接形成的二进制序列,是一种罕见的音频文件格式,因此在对pcm文件进行读写的时候,要选用以二进制的形式打开. 此次读写的PCM文件,单声道,采样率是16KH ...
- 【转】PCM Audio,PCM格式音频文件 详解
PCM文件:模拟音频信号经模数转换(A/D变换)直接形成的二进制序列,该文件没有附加的文件头和文件结束标志.Windows的Convert工具可以把PCM音频格式的文件转换成Microsoft的WAV ...
- STM32最小板完成音频数据的读取与DAC播放
目录 一.Flash简单介绍 1.Flash操作流程与操作选址 1.1.Flash操作流程 1.2 .如何查找并选定要写入Flash十六进制地址 2.Flash读写等相关原理 2.1.闪存的读取 2. ...
- python获取mp3音频数据,python 读取音频文件的详细信息
有一项测试的需求是判断录像是否和预期一致,检查项是:分辨率.录像时长等内容 文件的详细信息.png os模块有一个stat()方法 st_mode: inode 保护模式 st_ino: inode ...
- 使用FFmpeg将S16格式音频数据重采样为FLTP格式
代码对一些数据没做判断,仅仅是做个备忘!请谨慎参考! #include <libavutil/opt.h> #include <libavutil/samplefmt.h> # ...
最新文章
- 感受 lambda 之美!
- 有一种爱,永远也无法逾越
- mysql select 使用_mysql select简单用法
- iPhone的录音和播放
- Mac下Nginx、PHP、MySQL 和 PHP-fpm安装配置
- 如果没有Visual Studio 2015,我们如何创建.NET Core项目 ?
- 用python绘制心形_如何利用Python绘制一个爱心
- 使用Jenkins搭建持续集成环境的方法(一)
- iOS安装CocoaPods详细过程
- HanLP: Han Language Processing
- java学习(eclipse环境的使用)
- 设计模式-Builder模式详解
- java支付宝扫码支付,简单生成二维码方法
- 我对SAP培训的理解(转)
- Flutter随记四:null safe之 ??= 和??和 ?使用区别
- Google I/O 2021: 在重要时刻提供帮助
- 问题:控制台报错style-helper.mjs?d002:125 Uncaught (in promise) TypeError: Cannot read properties
- C语言--第二篇类型、运算符与表达式
- 使用 GVM 工具管理 Go 版本
- 没有项目经验?软件测试简历项目经验怎么写...
热门文章
- UKEY开发 用户登录流程
- 奇妙的数字 小明发现了一个奇妙的数字。它的平方和立方正好把0~9的10个数字每个用且只用了一次。你能猜出这个数字是多少吗?
- 2010年的读书计划
- 查计算机硬盘序列号6,Win7电脑查看硬盘序列号的方法
- javaweb小区物业管理系统设计与实现(毕业论文+程序设计+数据库文件)
- 华为数通笔记-数通基本概念
- ThinkPad P73 拆机清灰日志
- 济南北大青鸟2013春季百人就业工程计划
- 东华大学python题库_2020尔雅纺纱学(东华大学)完整答案
- 基于Spring+Struts2+Hibernate开发易买网商城系统