Skip to main content

A CLI music recognition tool for audio and mixtapes using Python.

Project description


Pyzam logo Pyzam logo



Pyzam is a free CLI music recognition tool for audio and mixtapes in Python.

Installation

Dependencies

Pyzam requires ffmpeg installed.

Installation

$ pip install git+https://github.com/lukafilipxvic/Pyzam.git#egg=Pyzam

Usage

# Listen to speaker (5 seconds by default)
pyzam --speaker

# Listen to microphone
pyzam --microphone

# Listen to audio files
pyzam --input audio_file.mp3
# Loop the recognition continously and save the logs as CSV file
pyzam --speaker -d 10 --loop

# Listen to mixtapes and save the logs as CSV file
pyzam --input audio_file.mp3 --duration 12 --mixtape

See pyzam --help for more options.

Options

Argument name Description
--input Detects from the given audio input file.
--microphone, -m Listens to the microphone of your device.
--speaker, -s Listens to the speaker of your device (default).
--help, -h Show usage & options and exit.
--duration, -d Length of microphone or speaker recording. Max = 12 seconds.
--loop, -l Loop the recognition process indefinitely.
--mixtape Detects every -d seconds for a given input file, only works with --input. --write is enabled automatically.
--json, -j Return the whole Shazamio output in JSON.
--write, -w Writes the output of as a CSV file.

Known Limitations

Shazam API Call Limit (Error 429)

Shazam allows up to 20 requests per minute. Hence, a proxy is recommended to speed up recognition when using --mixtape.

12 Second Sample Limit per request

The maximum sample duration that Shazam allows is 12 seconds. Any audio after 12 seconds will not be recieved by Shazam.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyzam-0.10.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyzam-0.10-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file pyzam-0.10.tar.gz.

File metadata

  • Download URL: pyzam-0.10.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for pyzam-0.10.tar.gz
Algorithm Hash digest
SHA256 ce47f9adb967e144e2b8e60712b0bc83573259600b11ecaf3cf656e8134a8d8a
MD5 a766ad16bff0afe4e0cd9275140931f7
BLAKE2b-256 5e5b36113fe44a4d57d3a96ac7760ccc50058a235bbee6752e291014560b1d11

See more details on using hashes here.

File details

Details for the file pyzam-0.10-py3-none-any.whl.

File metadata

  • Download URL: pyzam-0.10-py3-none-any.whl
  • Upload date:
  • Size: 7.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for pyzam-0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 e4ce3649adb4cf007cf0e7e29ef9e0cb71cad1a0073161d58b979538e165c22e
MD5 41dd455dbf7dd36c0335d1b7b4fa37f8
BLAKE2b-256 501880ed6ab6e9f8ab2c75ed255f6e2ca1c128f5061ff6490d323de23985633f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page