gunshooter的个人博客分享 http://blog.sciencenet.cn/u/gunshooter

博文

matlab的音频处理:读取,裁剪,输出和命名

已有 8189 次阅读 2018-4-1 14:44 |个人分类:matlab:可以运行的程序|系统分类:科研笔记

 网易云下架了周杰伦的几乎所有歌曲,于是尝试下载一套周杰伦的音乐全集。从微盘上下载到的音乐前面有一段奇葩的广告,长约8秒。因为广告长度一样可以轻松的裁剪处理,于是想到可以用matlab写一个简单的小程序。

程序的思路是这样的:

s1:将所有音乐下载到本地,保存在一个文件夹中;

s2:读取文件夹中文件的信息,获取文件数量;

s3:对每一个文件:

    s31:读取名字;

    s32:裁剪广告;

    s33:改名字(备注);

    s34:输出;

备注:原音乐是mp3格式,但是matlab输出函数sudiowrite不支持mp3,所以必须改一下。

代码是这样的:

clear all

clc

file = dir('F:\matlab\jay\*.mp3');%将歌曲都保存在一个文件夹中,读取其中所有mp3后缀的文件

for n = 1:length(file)

    [data,fs] = audioread(file(n).name);%读取mp3文件,data是音频信号,fs为采样率

    data = data((416130:end),:);%416130通过直接给data绘图查看得到

    name = file(n).name;

    name = name(1:end-4);%去除后缀

    name = strcat(name,'.m4a')%添加matlab承认的后缀,相对来说m4a文件较小

    audiowrite(name,data,fs);%是输出到原路径

end

    

程序非常简单,但是涉及到了读取文件夹中文件信息,文件输入输出和音频裁剪,还是有很多原来不会的,其中结构体的操作很有意思。

至于盗版的问题,咋说呢。

emmmm吊诡的世界,还是写代码有意思。

最后祝你,身体健康,再见。




https://blog.sciencenet.cn/blog-3378736-1106780.html

上一篇:激光导热仪
下一篇:夹具,连接件,伸缩杆
收藏 IP: 58.247.22.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-26 19:00

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部