【追記】20210906 loadAndReadのバグに注意。
最近アンドロイドアプリを作ろうとしているので備忘録
#Javaでサクッと音の特徴量求めたいけどどうしよう
pythonだったらLibrosaに頼るところですが、Javaにも似たようなライブラリがないか探してみたところありました!
その名もjlibrosa!!!
Java版Librosa作ろうぜ、みたいなところがモチベーションで開発されているようです。
androidでどうやって使うかも、神記事にちょいと書かれており、非常に助かりました。
ただライブラリのインストールのところでちょっと躓いたので記事に残しておきます。
#jlibrosaをandroid studioにライブラリとしてインポートする手順
- githubからjlibrosaをダウンロードしてくる #zipでどんとやっちゃいましょう
- android studioをプロジェクトビューにしてlibsフォルダを出現させる
- ダウンロードしたjlibrosa-master/binaries以下に.jarファイルが2つ入っているのでそれをlibsフォルダに追加する
- それぞれの.jarファイルを右クリックして「ライブラリーとして追加」を選ぶ
個人的にはlibsフォルダどこあんねん、っていうのと、
どのファイルをandroids studioに追加すればいいかで躓きました。
libsフォルダはandroid studio左上のプルダウンから「プロジェクト」(デフォはandroidになっているはず?)を選択すると出現します。
以上!
作ったアプリについても記事にできたらいいな。
#追記 20210906 loadAndReadのバグに注意。
issuesにも書いてあるのですが、loadAndReadで任意のサンプリング周波数で読み込めないというバグがあります。
https://github.com/Subtitle-Synchronizer/jlibrosa/issues/3
デフォルト値として取り扱いたいサンプリング周波数を与えてあげれば思うように動作するようなので、回避するためには上記のようにライブラリとしてインポートするのではなく、コードとしてプログラムに取り入れてデフォのサンプリング周波数を変えてあげる必要があるみたいです。要チェキです。