matlab 声道分离合并与组合
2017-02-07 09:58
381 查看
立体声或双声道音频信号有左右两个声道
利用 MATLAB 实现双声道分离
两路声道合并和两个单声道组合成一个双声道等效果
实际上是利用了MATLAB 的矩阵抽取
矩阵相加和矩阵重组运算
例 2 现以例 1 生成的 XPquit.wav 为例 实现分离 合并和组合处理的程序如下
可以试听声道分离 合并与组合的效果 也可对各文件大小进行比较
利用 MATLAB 实现双声道分离
两路声道合并和两个单声道组合成一个双声道等效果
实际上是利用了MATLAB 的矩阵抽取
矩阵相加和矩阵重组运算
例 2 现以例 1 生成的 XPquit.wav 为例 实现分离 合并和组合处理的程序如下
clear; close all; clc; [x,FS]=audioread('012617102-scuba-diver-3.WAV'); % 将 WAV 文件转换成变量 x1=x(:,1); % 抽取第 1 声道 x2=x(:,2); % 抽取第 2 声道 audiowrite('012617102-scuba-diver-2quit1.WAV',x1,FS); % 实现 1 声道分离 audiowrite('012617102-scuba-diver-2quit2.WAV',x2,FS); % 实现 2 声道分离 %如果合并位置不对前面补 %声道长度不对后面补 x12=x1+x2; % 两路单声道列向量矩阵变量合并 x12m=max(max(x12),abs(min(x12))), % 找出极值 y12=x12./x12m; % 归一化处理 audiowrite('012617102-scuba-diver-2quit11.WAV',y12,FS); % 实现两路声道合并 %如果组合位置不对前面补 --声道长度不对后面补 x3=[x1,x2]; % 两路单声道变量组合 audiowrite('012617102-scuba-diver-2quit12.WAV',x3,FS); % 实现两路声道组合
可以试听声道分离 合并与组合的效果 也可对各文件大小进行比较
相关文章推荐
- win7 旗舰版下如何分离磁盘空间与合并磁盘空间
- RxJava 合并组合两个(或多个)Observable数据源
- matlab数据转换为字符串并合并字符串标注到图像曲线上
- Android RxJava操作符详解 系列:组合 / 合并操作符
- matlab 对矩阵进行组合cat函数
- Matlab使用subplot合并子图
- Android RxJava操作符详解 系列:组合 / 合并操作符
- OpenCV学习之Mat数据按位操作与通道分离合并
- Matlab合并多个.fig文件
- 分离与合并图像通道的方法
- 关于netsuite创建组合按钮的方法,合并按钮,netsuite API
- HeadFirst 设计模 4000 式 9迭代器与组合模式(餐厅合并)
- Opencv3编程入门学习笔记(五)之通道分离(split)与合并(merge)
- BZOJ 1269: [AHOI2006]文本编辑器editor 分离合并Splay
- CAD组合成块,CAD合并成块,CAD炸开后再合并,CAD中炸开的图块合并在一起
- 双色球的中奖概率是多少——用matlab的函数计算组合
- matlab 排列组合函数的用法
- 合并组合hdu 1867 KMP
- 以前写的matlab代码,有部分是从txt导数据到matlab里,还有合并矩阵
- 【OpenCV3】图像通道分离与合并——cv::split()与cv::merge()详解