matlab播放音樂


最近在做計算,寫了一些matlab代碼,腦殼還疼,所以決定發揮一下逗B精神,寫一個程序玩一下。

想了想,既然寫代碼的時候喜歡聽歌,而且我的電腦打開網易音樂的速度巨慢(不知道為什么。。),那些一個程序直接播放音樂多好,以后就不用打開那么多軟件了。

嗯,這是一個挺有意思的東東。。。

好吧,這是研究背景。。。。。。明顯已經中毒了。。。不過寫的好low。

言歸正傳,首先發現的sound函數,而且matlab自帶一些聲音,比如

load('train');
sound(y,Fs)%y,Fs are matrix

這是matlab自帶的聲音,火車拉笛的聲音。

既然可以播放聲音,那問題就簡單了(當時那么想的。。)

 接下來只要寫幾行代碼來讀取歌曲就OK了。

music_read=dir(fullfile('路徑','*.mp3'));

這樣便可以找到'路徑'下所有的mp3文件,當然其他的類似咯。這樣讀取播放單個歌曲沒有問題了,下一步就想最好是播放列表就好了,自然就想到了循環(菜鳥的高度很低。。),但是問題就來了,每次循環的時間很短,但是歌曲的播放時間不一樣長,后面發現可以用audioinfo來讀取歌曲信息。下面是代碼

music_num = length(music_read);
y_cell = cell(1,music_num);
Fs_cell = cell(1,music_num);
music_name = cell(1,music_num);
    for k = 1: music_num
        music_name{k} = music_read(k).name;
        [y_cell{k},Fs_cell{k}] = audioread(music_name{k});%讀取歌曲
     sound(y_cell{k},Fs_cell{k});%播放歌曲 music_info = audioinfo(music_name{k});%讀取歌曲信息 pause(music_info.Duration);%每首歌的播放時間 end

這種方式的問題很大,程序一直占着matlab,沒法干其他事情了。不好。但是實在是腦殼疼,不搞了,下次有時間在搞。

寫這個主要是記錄一下幾個函數而已。。。。寫的亂七八糟的自己看看。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM