Wizard Notes

Python, JavaScript を使った音楽信号分析の技術録、作曲活動に関する雑記

numpy.savez_compressed:複数のNumPy配列を圧縮&バイナリ保存

Numpy で配列をバイナリで保存する方法としては、 numpy.save(npy_filepath, arr) が最も単純な方法です。 しかし、 非圧縮であるため、ファイルサイズが大きくなりがち 単一の配列オブジェクトのみ保存 であるため、大量の配列を保存する場合や、配列サイズ…

foobar2000 mobile (for iOS) でバックグラウンド再生ができないときの対処方法

foobar2000 mobile Windows で非常に人気のフリーウェア音楽プレイヤー foobar2000。 実は、iOS/Android用のアプリ foobar2000 mobile があります。 foobar2000Resolute Limitedミュージック無料 play.google.com foobar2000 mobile - foobar2000 Wiki スマ…

Docker+Nginx+uWSGIで複数のFlaskアプリ(コンテナ)を運用

概要 Docker上での、1つのuWSGI+Flaskコンテナで複数アプリを運用するスタイルは、Blueprintなどを駆使すれば可能です。 しかし、Blueprintの仕様のせいでディレクトリ構造が複雑になってしまったり、ルーティングの際に他のサービスに影響を与えてしまう可…

Python で iTunes Search API を叩いて iTunes Storeの音楽を検索する

はじめに iTunes の Search API を使うと、iTunes Storeで販売されているコンテンツを検索することができます。 iTunes Search API – Partner Resources 検索用のAPI自体は、デベロッパーとしての登録やAPIトークンが必要ないため、手軽に利用できます。 こ…

レーベンシュタイン距離で似た曲名・アーティスト名を検索(Python実装)

はじめに 表記に一部誤りを含む曲名・アーティスト名を入力として、正しい名前を出力 or マッチ度を計算する関数を作る必要があったため、調査・実装など検討してみました。 はじめに レーベンシュタイン距離 使ってみた 付録・実装 レーベンシュタイン距離 …

DMM.com の月額CDレンタル1ヶ月無料トライアルで、CD8枚を約2週間でレンタルした話

概要 DMM.comの月額CDオンラインレンタルは、1か月無料体験 ができます。無料体験プランでは新作を除くCDを最大8枚/1か月レンタルすることができます。 DMM.comでお手軽DVDレンタル♪1ヶ月無料体験実施中 オンラインレンタルなので、レンタルショップへ行く…

L'Arc-en-Ciel の曲の中から、似たBPM/テンポの曲を検索

概要 ラルクの似た曲検索、とりあえず類似度プロットまで。 pic.twitter.com/FbIF4Wf9tm— Kurene (@_kurene) December 24, 2019 これまでに、Perfumeや東方プロジェクトなどの楽曲を使って、同一アーティストの似た曲を検索するアルゴリズム構築をしてきまし…

Spotify Web API で取得できる音響・楽曲特徴量の一覧

はじめに Spotify の Web APIを調べていたら、APIを叩いて取得できる音響・楽曲特徴量のドキュメントを発見しました。 developer.spotify.com 非常に興味深い特徴量がいくつかあったので、紹介したいと思います 各特徴量の説明 duration_ms: int 楽曲の時間…

Python:Pathクラスのリストをファイル名でソート

ソートされていないpathlibモジュールのPathクラスのリストをソートしたかったので、作ってみました。 トイデータ生成 順番がバラバラなPathクラスのリストがある*1状況を想定します。 from pathlib import Path filelist = ["./dir/abb.ext", "./dir/aaa.ex…

matplotlibでcolormapを逆にする方法

matplotlibでは多数のカラーマップが用意されています。 Choosing Colormaps in Matplotlib — Matplotlib 3.1.0 documentation データに手を加えずカラーマップを逆にしてプロットするのは、<span style="color: #d32f2f">カラーマップを指定する引数 cmap に与えるカラーマップ名の後ろに</span>…