| | |
| |
|
|
|
SI Audio M/C (AI音楽DJ)
ローカルLLM、Ollamaを使用したPythonのAI音楽DJアプリ。
複数フォルダをまとめて連続演奏することが出来ます。
|
|

 |
|
|
| | |
| 【概要(Description)】 | |
| | |
|
| - | 複数フォルダを対象として音楽ファイル(mp3、m4a)をAI(OllamaローカルLLM)により抽出します。 |
| | | 抽出条件は、季節、時間帯、今の気分(入力)。
設定により全曲演奏する設定があり、AIによる抽出機能をスキップします。 |
| | | |
| - | クロスフェード機能により、途切れることなく音楽を再生します。 |
| | | |
| - | 音量レベルの自動調整機能により、全体的なボリュームを均一に保ちます。 |
| | | |
| - | 楽曲数(フォルダ数)が多い場合に備えたGPU温度監視機能(冷却待ち機能) |
| | | 60℃を越えている間、AIの抽出処理を停止してスリープします。 |
| | | |
| - | 使用するAIモデルを設定により変更する事が可能です。 |
| | | 規定のモデルは、llama3です。 |
| | | |
| - | 設定で楽曲を次々に切り替えるショート演奏(規定値90秒)が可能です。 |
| | | 対象の曲数が多い等、次々にスピーディに音楽を再生する機能です。 |
| | | |
| - | 対象にする音楽フォルダ一覧は、「music.txt」ファイルに記載します。 |
| | | 複数のフォルダを記載する事が出来ます。
また、使用する「music.txt」ファイルを設定により他のファイルに変える事が出来ます。
ジャンル毎等を用意して切り替えて使用してください。
ファイルの1行目は、タイトルですがここに「[ALL]」を記載する事で、AIによる抽出をスキップし、全曲が対象になります。 |
| | | |
| - | オフライン対応(端末内部で完結) |
| | | ローカル環境で大規模言語モデル(LLM)を動かすOllamaを利用した
完全オフラインで動作する環境です。 |
|
|
| | |
| 【動作環境(Requirements)】 | |
| | |
|
| - | OS:Windows 11 |
| - | Python:Python 3.12 (仮想環境推奨) |
| - | LLM Runtime:Ollama (サービスとして稼働中であること) |
| - | LLM Model:[llama3] (事前に Ollama に pull 済みであること) |
| - | 対応音楽型式:mp3, m4a, wav, flac |
|
|
| | |
|
|
|
| | |
| - このアプリについて | |
| | |
|
|
Windows11で、OllamaとPythonをインストールしている事が前提になりますが、 既にインストールされている方は、簡単に稼働させる事が出来ると思います。
また、もう一つの条件が、複数の音楽ファイルをマシンに保有している方になります。
是非、使ってみてください。
|
|
|
| | |
|
 |
|
18歳以上 |
|
|
| | |
| 【インストール方法(Installation)】 | |
| | |
|
| [1] |
適当なフォルダに、ZIPファイル内の全てのファイルを展開します。
** ZIPフォルダから直接実行はできません。必ずどこかに展開してください **
** アップデートする場合は、「Python_mp3.py」のみ上書きしてください。 **
|
| ✨ | ダウンロードしたzipファイルを展開すると以下のようになります。 |
| ** Dドライブに展開した場合 ** |
| 🖴D:\ | | |
| ┣📁SI_Audio_MC | : | アプリのフォルダー(任意)[1] |
| ┃ config.ini | : | 設定ファイル |
| ┃ music.txt | : | 音楽フォルダ一覧 |
| ┃ Prompt.txt | : | プロンプト |
| ┃ Readme.txt | : | アプリの説明 |
| ┃ SI_Audio_MC.py | : | アプリ本体 |
| │ | | ** zipに含まれる内容はココまで ** |
| |
| │ | | |
| └📁.venv | : | ** venvコマンドで作成するフォルダー[2] ** |
| │ pyvenv.cfg | | |
| │ | | |
| ├📁Include | | |
| ├📁Lib | | |
| ├📁Scripts | | |
| └📁share | | |
|
| [2] | 可動環境を整えます。 |
| (1) | コマンドプロンプトを起動します。
|
| (2) | アプリを保存したフォルダに移動します。 |
| | d: cd \SI_Audio_MC ↓ D:\SI_Audio_MC >
|
| (3) | 次のコマンドで.venvを作成します。 |
| | python -m venv .venv
|
| (4) | 次のコマンドで仮想環境を立ち上げます。 |
| | call .venv\Scripts\activate ↓ (.venv) D:\SI_Audio_MC >
|
| (5) | 必要なライブラリをインストールします。
| | - | 付属のrequirements.txtを利用してパッケージを一括インストールする場合。 |
| | pip install -r requirements.txt
|
| - | 個々にライブラリをインストールする場合。 |
| |
pip install ollama
pip install pygame
pip install pydub
pip install pynvml
pip install configparser
|
| | ** 不足しているライブラリがあれば、適宜インストールしてください **
|
|
| [3] |
[music.txt]ファイルに音楽ファイルを保存しているフォルダを記載してください。
** `#`で始まる行は、対象外フォルダとして、スキップします **
|
|
|
| | |
| 【アンインストール方法(Uninstall)】 | |
| | |
|
インストールしたフォルダとフォルダ内の全てのファイルを削除してください。
** レジストリは利用していません **
|
|
| | |
| 【使い方(Usage)】 | |
| | |
|
| [1] | コマンドプロンプトを起動します。
|
| [2] | アプリのフォルダに移動します。 |
| d: cd \SI_Audio_MC ↓ D:\SI_Audio_MC >
|
| [3] | 仮想環境を立ち上げます。 |
| call .venv\Scripts\activate ↓ (.venv) D:\SI_Audio_MC >
|
| [4] | アプリを起動します。 |
| python SI_Audio_MC.py |
| 気分を入力すると、フォルダ毎にAIが音楽を選択します。
全フォルダからの抽出が完了すると演奏が開始されます。
|
| [5] | 終了するには |
| (1) | [Ctrl]+Cでアプリを停止します。 ↓ (.venv) D:\SI_Audio_MC >
|
| (2) | 以下のコマンドで仮想環境を終了します。 |
| | call .venv\Scripts\deactivate ↓ D:\SI_Audio_MC >
|
| (3) | 以下のコマンドでコマンドプロンプトが閉じます。 |
| | exit
|
|
|
|
| | |
| - 設定ファイル「config.ini」について | |
| | |
|
| |
| [DEFAULT] | | ** 規定値 ** |
| debug=False | : | デバッグモード(No) |
| GPU_temp=60 | : | GPUのMAX温度(60℃) |
| short_play=False | : | ショート演奏(No) |
| short_time=90.0 | : | ショート演奏時間(90秒) |
| crossfade_ms=30000 | : | クロスフェード時間(30000m秒) |
| model=llama3 | : | AIモデル |
| prompt=./prompt.txt | : | プロンプトファイル |
| music=./music.txt | : | 音楽フォルダ一覧ファイル |
| | | |
| [SYSTEM] | | ** 任意 ** |
| debug=False | : | Trueでデバッグモードになります |
| GPU_temp=60 | : | GPUのMAX温度(この温度を超えるとスリープします) |
| short_play=False | : | Trueで、ショート演奏に切り替わります |
| short_time=105.0 | : | ショート演奏時間(秒) |
| crossfade_ms=45000 | : | クロスフェード時間(m秒) |
| model=llama3 | : | 使用するAIモデル |
| prompt=./prompt.txt | : | プロンプトファイル |
| music=./music.txt | : | 音楽フォルダ一覧ファイル |
| |
| |
| | |
| 【 🤝 寄付・フィードバックについて】 | |
| | |
|
本プロジェクトはフリーウェアであり、自由な利用を目的としています。
もし本ソフトウェアがお役に立ちましたら、寄付やスター、フィードバックをいただけると大変励みになります。
(寄付は任意です。)
|
|
| | |
| 【 📜 ライセンスについて】 | |
| | |
|
本プロジェクトは **MIT License** の下で公開しています。
誰でも自由に利用、改変、再配布が可能です。
詳細なライセンス条件(著作権、免責事項など)は、リポジトリルートにある `LICENSE` ファイルにてご確認いただけます。
|
|
| | |
| blog - 音楽の海に、SI Audio M/Cという羅針盤を |
| | |