TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: Is there a OS tool which queries MIDI datasets by chord progression/key?

9 点作者 stevehiehn超过 2 年前
I&#x27;m about to build a MIDI data query tool if it doesn&#x27;t already exist. I need a simple tool that brute-force searches midi clips from public domain datasets. For example, I want to say my progression is in `C - 4&#x2F;4 - Am7-Am7-G7-Dm7` And the system offers midi clips that match that exact criteria.<p>ps - I&#x27;m fully aware of generative music AIs (in fact I maintain one: https:&#x2F;&#x2F;signalsandsorcery.org&#x2F; , but in this case I&#x27;m interested in brute-force searching datasets.

6 条评论

LunarAurora超过 2 年前
The crucial step is extracting the (best) harmony progression from each midi. Look at Chordino [1] with the vamp Python wrapper [2]<p>[1] <a href="https:&#x2F;&#x2F;code.soundsoftware.ac.uk&#x2F;projects&#x2F;nnls-chroma" rel="nofollow">https:&#x2F;&#x2F;code.soundsoftware.ac.uk&#x2F;projects&#x2F;nnls-chroma</a><p>[2] <a href="https:&#x2F;&#x2F;pypi.org&#x2F;project&#x2F;vamp&#x2F;" rel="nofollow">https:&#x2F;&#x2F;pypi.org&#x2F;project&#x2F;vamp&#x2F;</a>
评论 #34142399 未加载
评论 #34142349 未加载
peterkos超过 2 年前
A little manual, but music21[0] can do the analysis!<p>[0]: <a href="http:&#x2F;&#x2F;web.mit.edu&#x2F;music21&#x2F;" rel="nofollow">http:&#x2F;&#x2F;web.mit.edu&#x2F;music21&#x2F;</a>
评论 #34152194 未加载
thesnide超过 2 年前
there is also midicsv that unlocks all the excel macros on midi data. And SQL&#x2F;OLAP if you are so inclined.<p><a href="https:&#x2F;&#x2F;www.fourmilab.ch&#x2F;webtools&#x2F;midicsv&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.fourmilab.ch&#x2F;webtools&#x2F;midicsv&#x2F;</a>
stevehiehn超过 2 年前
Just to follow up: I started building a python CLI tool. I&#x27;m only 2 days in but the &#x27;happy path&#x27; is working: <a href="https:&#x2F;&#x2F;github.com&#x2F;shiehn&#x2F;midi_query">https:&#x2F;&#x2F;github.com&#x2F;shiehn&#x2F;midi_query</a>
sargstuff超过 2 年前
midi2tones [1] can generate a streem of note sequences which can be awk&#x2F;grep&#x27;d&#x2F;reg-expression searched.<p>Midi 2 Nyquest[2] dumped to python AI used to visual identify requested cord progression (aka automate what a human reading a musical score would do) would be pretty cool (get location &amp; stats of where progression occures)<p>------<p>[1] nyquest : <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Nyquist" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Nyquist</a><p>[2] midi2tones : <a href="https:&#x2F;&#x2F;github.com&#x2F;MLXXXp&#x2F;midi2tones&#x2F;blob&#x2F;master&#x2F;midi2tones.c">https:&#x2F;&#x2F;github.com&#x2F;MLXXXp&#x2F;midi2tones&#x2F;blob&#x2F;master&#x2F;midi2tones....</a>
评论 #34140810 未加载
sargstuff超过 2 年前
Some combination&#x2F;variation from command line of grep&#x2F;sed&#x2F;awk script(s) using regular expressions &amp; local file(s)&#x2F;db containing relevant dataset(s) to search.<p>example unix shell command line:<p><pre><code> cat midi.data.file | grep &#x27;C - 4&#x2F;4 - Am7-Am7-G7-Dm7&#x27; </code></pre> Pearl &#x2F; python &#x2F; ruby &#x2F; go &#x2F; lisp shell etc. make for easier paring with gui &amp; on-line use of public domain datasets (vs. downloading dataset file&#x2F;db)
评论 #34140290 未加载