作者phoenixlife (鍵盤小底迪)
看板Python
標題[問題] 新手請教一些音樂相關問題
時間Tue Jul 31 00:12:41 2018
如題
我想做一個程式input一個音樂檔 然後直接轉換成音階(Do Re Mi..)
不知道這有沒有人做過
在github也不知道打哪些關鍵字
frequency,note....找到很多沒有想要的
另外,有做這類適合用哪些package
這樣才會有比較好的方向下手
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.137.206.225
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1532967165.A.D5B.html
1F:推 AndyLee76: 呃這問題沒這麼容易解 07/31 00:38
2F:推 AndyLee76: 關鍵字是 Pitch and Chord Recognition 07/31 00:41
3F:→ vi000246: 我只能說非常難 07/31 00:57
4F:→ Hsins: 學過訊號分析嗎? 07/31 00:58
5F:→ Hsins: 讀入音檔用 pyaudio, 讀完之後透過 scipy 處理頻率, 你還要 07/31 01:00
6F:→ Hsins: 考慮取樣的時間間隔, 接著由於頻率有高有低, 你轉成音階要 07/31 01:00
7F:→ Hsins: 多久轉一次? 怎麼去判斷這個音階(實際上應該說是唱名,會 07/31 01:01
8F:→ Hsins: 根據不同調性而不同) 07/31 01:01
9F:→ Hsins: 你在三秒內可能有兩個唱名,都要輸出嗎?如果不是,你還要 07/31 01:02
10F:→ Hsins: 寫個濾波器,把他整的乾淨一點而不是起起伏伏(怎麼整?單 07/31 01:02
11F:→ Hsins: 位怎麼拿捏?今天換輸入另外一個音檔,還是一樣的時間長度 07/31 01:03
12F:→ Hsins: 去濾嗎?) 07/31 01:03
13F:推 Panthalassa: 真的很難,你可以先把訊號畫出來,看看是不是夠簡單y 07/31 03:01
14F:→ Panthalassa: 把各個單音分開來,而單音內是不是夠乾淨? 07/31 03:01
看來我找到一個很艱深的問題
剛查了一下 對岸稱這個叫 "扒譜"
不過我想先把問題先化為簡單一點
如果讀取的聲音只有鋼琴聲或是人聲 也就是只有一種音品
讀取的最小間格就16分音符的時間
只是連續音 要怎麼判斷感覺也是很困難
※ 編輯: phoenixlife (61.222.64.169), 07/31/2018 10:01:14
※ 編輯: phoenixlife (61.222.64.169), 07/31/2018 10:06:27
15F:→ pups003: 人聲不是單一音頻,泛音也很麻煩 07/31 11:56
搞錯了 我應該想表達的意思是比較乾淨音檔
16F:推 kevin85421: 這問題超難有harmonic 07/31 12:21
※ 編輯: phoenixlife (61.222.64.169), 07/31/2018 12:23:11
17F:推 Angesi: 將頻率數值化並定義DoReMi的區間 將輸入的音頻 以固定時間 07/31 17:38
18F:→ Angesi: 間間隔做抽樣 可將這些抽樣點做折線圖 連成音波~ 試一下 07/31 17:40