audio-analysis
Inspect downloaded track waves or query APIs to analyze audio parameters like BPM, Key, Energy, and Valence.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Inspect downloaded track waves or query APIs to analyze audio parameters like BPM, Key, Energy, and Valence.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Control agent-lx-music (alx) CLI to search, play, download music, fetch lyrics/covers, and manage playlists.
Act as a real-time multimodal music companion by listening to audio tracks and providing structural, stylistic, and lyrical feedback.
Formulate semantic music search queries, expand genres/moods, and discover music using alx search CLI.
| name | audio-analysis |
| description | Inspect downloaded track waves or query APIs to analyze audio parameters like BPM, Key, Energy, and Valence. |
| version | 1.0.0 |
| author | agent-lx-music project |
| license | MIT |
| metadata | {"hermes":{"tags":["music","analysis","bpm","key","signal-processing"],"related_skills":["agent-lx-music"]}} |
This skill guides AI agents in performing deep signal-processing analysis or metadata lookups on music tracks. By analyzing audio parameters such as BPM (Beats Per Minute), Musical Key / Scale (e.g. C Major, A Minor), and energy metrics, the agent can help users categorize playlists, match tempos for workouts or DJ sets, and explore composition structures.
Agents can query open music repositories (such as AcousticBrainz, Spotify Audio Features, or MusicBrainz) using song metadata to fetch precise pre-computed acoustic features.
{
"title": "晴天",
"singer": "周杰伦",
"bpm": 84,
"key": "G Major",
"valence": 0.52,
"energy": 0.48,
"danceability": 0.58,
"time_signature": "4/4"
}
When the track is downloaded locally via alx download <id>, the agent can run local CLI signal processing tools (such as aubio, ffmpeg, or custom scripts using librosa / essentia / madmom models) to analyze the audio file.
Identify the rhythmic rate of the song:
# Using aubio CLI tool to detect tempo (BPM) on downloaded track
aubiopitch -i "/path/to/song.mp3"
aubiotempo -i "/path/to/song.mp3"
Analyze spectral pitch classes (chroma) to determine the tonic key:
# Conceptual ESSENTIA key extractor Python script
import essentia.standard as es
loader = es.MonoLoader(filename="song.flac")
audio = loader()
key_extractor = es.KeyExtractor()
key, scale, strength = key_extractor(audio)
print(f"Key: {key} {scale} (Strength: {strength})")
Build a playlist with songs matching a target BPM range (e.g. 120-130 BPM for jogging):
# Retrieve track metadata and filter for workout tempo (e.g. 125 BPM)
alx search "workout hits" --json | jq -r '.list[] | select(.bpm >= 120 and .bpm <= 130) | .id' | while read id; do
alx queue add "$id"
done
Advise the user on key matches (Camelot Wheel / Circle of Fifths) for smooth playlist progression: