Appearance
SoundStudio API Documentation
概要
SoundStudioは、音楽の再生、停止、一時停止を行うためのインターフェースを提供するアプリケーションです。ユーザーは音楽ファイルをカテゴリ別に整理し、直感的なUIを通じて操作できます。このアプリケーションは、customtkinter
を用いてGUIを構築し、pygame
を利用して音楽ファイルを処理します。
使用ライブラリ
customtkinter
: Tkinterのカスタマイズされたバージョンで、より豊かなUIを提供します。pygame
: 音楽ファイルの再生を管理するために使用します。os
: ファイルシステムとの対話のために使用します。threading
: 音楽再生の非同期処理を実現するために使用します。time
: タイマー機能を実現します。
クラス
1. SplashScreen
スプラッシュ画面を表示するクラス。
コンストラクタ
python
def __init__(self)
- 概要: スプラッシュ画面を作成し、3秒間表示します。
メソッド
create_splash_widgets()
- 概要: スプラッシュ画面のUI要素を作成します。
fade_in()
- 概要: スプラッシュ画面のフェードイン効果を実装します。
2. SoundStudioApp
メインアプリケーションを管理するクラス。
コンストラクタ
python
def __init__(self)
- 概要: アプリケーションの初期化を行い、UI要素を作成します。
メソッド
create_widgets()
- 概要: アプリケーションのUI要素を作成します。
load_music_files()
- 概要: 音楽ファイルをディレクトリから読み込み、カテゴリ別に整理します。
create_bgm_tab(category, files)
- 概要: 音楽カテゴリごとにタブを作成します。
- 引数:
category
: 音楽カテゴリ名(文字列)files
: 音楽ファイルのリスト(リスト)
play_selected_song(song, category)
- 概要: 選択された曲を再生します。
- 引数:
song
: 曲名(文字列)category
: カテゴリ名(文字列)
_play_song(song_path)
- 概要: 指定されたパスの音楽ファイルを再生します。
- 引数:
song_path
: 曲のファイルパス(文字列)
play_song()
- 概要: 現在選択されている曲の再生を再開します。
pause_song()
- 概要: 現在再生中の曲を一時停止します。
stop_song()
- 概要: 現在の曲の再生を停止します。
set_volume(volume)
- 概要: 音量を設定します。
- 引数:
volume
: 音量(0.0〜1.0の浮動小数点数)
update_progress_bar()
- 概要: 音楽の再生進行状況を示すプログレスバーを更新します。
exit_app()
- 概要: アプリケーションを終了します。
3. 設定タブ
create_settings_tab()
- 概要: アプリケーションの設定を管理するタブを作成します。
ログ機能
log(message)
- 概要: アプリケーションのログにメッセージを追加します。
- 引数:
message
: ログに記録するメッセージ(文字列)
UI要素
- スプラッシュ画面: アプリケーションの初期表示を行う画面。
- メイン画面: 音楽の選択、再生、一時停止、停止を行うインターフェース。
- ボリュームスライダー: 音量を調整するためのスライダー。
- プログレスバー: 音楽の再生進行状況を示すバー。
注意事項
- 音楽ファイルは、アプリケーションのカレントディレクトリに配置され、各カテゴリに分けられる必要があります。
- 音楽ファイルは、
.mp3
形式である必要があります。