色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Python簡單可視化音樂:提取音樂頻譜

對面小姐姐 ? 來源:Python實(shí)用寶典 ? 作者:Python實(shí)用寶典 ? 2023-10-21 11:39 ? 次閱讀

你有沒有經(jīng)常好奇一些音樂軟件的頻譜特效是怎么做的,為什么做的這么好看?有沒有想試試自己提取音樂頻譜并可視化展現(xiàn)出來?今天,咱就結(jié)合上次的音樂剪輯操作:

1.準(zhǔn)備

開始之前,你要確保Pythonpip已經(jīng)成功安裝在電腦上噢,如果沒有,請訪問這篇文章:超詳細(xì)Python安裝指南 進(jìn)行安裝。

Windows環(huán)境下打開Cmd(開始—運(yùn)行—CMD),蘋果系統(tǒng)環(huán)境下請打開Terminal(command+空格輸入Terminal),準(zhǔn)備開始輸入命令安裝依賴。

當(dāng)然,我更推薦大家用VSCode編輯器,把本文代碼Copy下來,在編輯器下方的終端裝依賴模塊,多舒服的一件事啊:Python 編程的最好搭檔—VSCode 詳細(xì)指南

在終端輸入以下命令安裝我們所需要的依賴模塊:

pip install pydub
pip install librosa

看到 Successfully installed xxx 則說明安裝成功。

2.頻譜展示

使用librosa和matplot,我們可以用10行代碼完整地展示整個頻譜:

圖片

import matplotlib.pyplot as plt
import librosa.display
# 音樂文件載入
audio_path = 'Fenn.mp3'
music, sr = librosa.load(audio_path)
# 寬高比為14:5的圖
plt.figure(figsize=(14,5))
librosa.display.waveplot(music, sr=sr)
# 顯示圖
plt.show()

不過,這樣的頻譜是整段音樂的,看起來非常難看,接下來我們使用 pydub 切割頻譜,以獲得更佳的效果。我們細(xì)分到0到1秒的區(qū)段來查看頻譜:

圖片

import matplotlib.pyplot as plt
import librosa.display
import numpy as np
from pydub import AudioSegment
# 1秒=1000亳秒
SECOND = 1000
#音樂文件
AUDIO_PATH = 'Fenn.mp3'

def split_music(begin, end, filepath):
    # 導(dǎo)兒音樂
    song = AudioSegment.from_mp3(filepath)
    # 取begin秒至ijend秒間的片段
    song = song[begin*SECOND: end*SECOND]
    # 存儲為臨時文件做備份
    temp_path = 'backup/'+filepath
    song.export(temp_path)
    return temp_path
music, sr = librosa.load(split_music(0, 1, AUDIO_PATH))
#寬高比為14:5的圖
plt.figure(figsize=(14, 5))
librosa.display.waveplot(music, sr=sr)
plt.show()

這下細(xì)是細(xì)了,但是還是太復(fù)雜了,其實(shí)我們做頻譜的展示,或許只需要正值即可:

圖片

然后我們還可以進(jìn)一步放大,比如說0.9秒到1秒之間的頻譜:

圖片

# 公眾號:Python 實(shí)用寶典
n0 = 9000
n1 = 10000
music = np.array([mic for mic in music if mic > 0])
plt.figure(figsize=(14, 5))
pit.plot(music[n0:n1])
plt.grid()
#顯示圖
plt.show()

這樣好看許多,不過如果要達(dá)成QQ音樂那種效果,還是需要進(jìn)行大量改造。

比如用精美的圖像元素來填充替代、然后零值如何處理?如何讓頻譜更加平穩(wěn)?此外,我們是靜態(tài)的圖像,還需要根據(jù)事件動態(tài)地延續(xù)波段。

用于生產(chǎn)的代碼肯定比我們這簡易的代碼更加復(fù)雜,而且也不應(yīng)該是暴力去除負(fù)值繪制圖像。這些有興趣的讀者可以自行研究啦。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 頻譜
    +關(guān)注

    關(guān)注

    7

    文章

    884

    瀏覽量

    45671
  • 編輯器
    +關(guān)注

    關(guān)注

    1

    文章

    806

    瀏覽量

    31207
  • 可視化
    +關(guān)注

    關(guān)注

    1

    文章

    1197

    瀏覽量

    20969
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4799

    瀏覽量

    84810
收藏 人收藏

    評論

    相關(guān)推薦

    數(shù)據(jù)可視化Python-matplotlib概述

    數(shù)據(jù)可視化(二):Python-matplotlib
    發(fā)表于 07-22 14:58

    python數(shù)據(jù)可視化的方法和代碼

    Python數(shù)據(jù)可視化匯總
    發(fā)表于 10-14 14:59

    Python數(shù)據(jù)可視化專家的七個秘密

    分享 Python數(shù)據(jù)可視化專家的七個秘密
    發(fā)表于 05-15 06:43

    python數(shù)據(jù)可視化之畫折線圖

    python數(shù)據(jù)可視化之畫折線圖,散點(diǎn)圖
    發(fā)表于 05-27 08:09

    Python數(shù)據(jù)可視化

    Python數(shù)據(jù)可視化:網(wǎng)易云音樂歌單
    發(fā)表于 07-19 08:30

    基于Arduino做個音樂可視化LED燈帶

    基于Arduino做個音樂可視化LED燈帶,快來探索用了什么原理和材料!結(jié)合提供的簡單代碼,軟硬件結(jié)合,你也可以在音樂中成為最靚的仔!
    發(fā)表于 09-27 08:08

    音樂樂譜提取軟件和音樂常識

    音樂樂譜提取軟件和音樂常識:由于人耳聽覺系統(tǒng)非常復(fù)雜,迄今為止人類對它的生理結(jié)構(gòu)和聽覺特性還不能從生理解剖角度完全解釋清楚。所以,對人耳聽覺特性的研究目前僅
    發(fā)表于 05-25 23:47 ?10次下載

    音樂頻譜-PCB及代碼

    基于stc12c5a單片機(jī)的音樂頻譜顯示屏幕的制作,可以根據(jù)音樂顯示出不同的頻譜,且燈的顏色可改變。
    發(fā)表于 02-29 15:08 ?65次下載

    音樂頻譜顯示器程序電路

    簡單音樂頻譜的電路與程序,喜歡的快下載吧!
    發(fā)表于 05-20 14:28 ?10次下載

    12864音樂頻譜

    12864音樂頻譜
    發(fā)表于 12-16 08:56 ?49次下載

    音樂頻譜程序

    音樂頻譜程序
    發(fā)表于 10-09 17:21 ?23次下載

    Python拉勾網(wǎng)數(shù)據(jù)采集與可視化

    本文是先采集拉勾網(wǎng)上面的數(shù)據(jù),采集的是Python崗位的數(shù)據(jù),然后用Python進(jìn)行可視化。主要涉及的是爬蟲&數(shù)據(jù)可視化的知識。
    的頭像 發(fā)表于 03-13 14:18 ?3268次閱讀
    <b class='flag-5'>Python</b>拉勾網(wǎng)數(shù)據(jù)采集與<b class='flag-5'>可視化</b>

    Python數(shù)據(jù)可視化編程實(shí)戰(zhàn)

    Python數(shù)據(jù)可視化編程實(shí)戰(zhàn)資料免費(fèi)下載。
    發(fā)表于 06-01 14:37 ?29次下載

    如何做一個音樂可視化系列小項(xiàng)目LED節(jié)奏燈

    ,逐步積累些有用的音樂頻譜可視化的資料,也會爭取成型一些實(shí)用好玩的音樂可視器項(xiàng)目。 初步設(shè)想: 1、模擬量拾音模塊,主要是采用MAX9814
    的頭像 發(fā)表于 11-09 17:20 ?4696次閱讀
    如何做一個<b class='flag-5'>音樂</b><b class='flag-5'>可視化</b>系列小項(xiàng)目LED節(jié)奏燈

    簡單音樂頻譜可視化

    電子發(fā)燒友網(wǎng)站提供《超簡單音樂頻譜可視化器.zip》資料免費(fèi)下載
    發(fā)表于 11-17 14:36 ?1次下載
    超<b class='flag-5'>簡單</b>的<b class='flag-5'>音樂</b><b class='flag-5'>頻譜</b><b class='flag-5'>可視化</b>器
    主站蜘蛛池模板: 又黄又湿免费高清视频| 无遮挡h肉3d动漫在线观看| 国产精品日本无码久久一老A| ppypp午夜限制不卡影院私人| 1a级毛片免费观看| 伊人久久综合成人亚洲| 亚洲中文字幕在线精品| 亚洲精品黄色| 亚洲精品在线网址| 亚洲国产欧美国产综合在线| 午夜国产精品免费观看| 无码天堂亚洲国产AV久久| 香港成人社区| 亚洲精品www久久久久久| 亚洲国产精品无码AV久久久| 亚洲欧美另类无码专区| 亚洲色图19p| 一二三四高清中文版视频| 伊人影院中文字幕| 52色擼99热99| wwwxxc| 成人毛片大全| 国产AV在线传媒麻豆| 国产乱码精品AAAAAAAA| 后入内射国产一区二区| 久久这里只有精品国产99| 男女作爱在线播放免费网页版观看 | 亚洲高清有码中文字| 性一交一乱一色一视频| 亚洲毛片网| 中文字幕在线播放| av天堂网2014在线| 粉嫩国产14xxxxx0000| 国产免费啪嗒啪嗒视频看看| 精品国产九九| 蜜柚视频在线观看全集免费观看| 亲胸揉胸膜下刺激视频网站APP| 色妹子综合| 亚洲中文字幕永久在线| 99久久就热视频精品草| 国产AV无码一二三区视频|