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 页面并帮你完成安装。
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: