Skip to content

Demonstrates how to play the pentatonic scale programmatically using Python and PyAudio

Notifications You must be signed in to change notification settings

adamstirtan/pypentatonic

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

Sine Wave Generator and Pentatonic Scale Player

This Python code generates sine waves and plays the pentatonic scale using the pyaudio library.

Requirements

  • Python 3.x
  • pyaudio library

Installation

  1. Clone or download the code from the repository.
  2. Install portaudio, a dependency of pyaudio using the the following command:

brew install portaudio

  1. Install the required pyaudio library using the following command:

pip install pyaudio

Usage

  1. Run the Python script sine_wave_pentatonic_scale.py.
  2. The script will generate sine waves for each note in the pentatonic scale and play them.
  3. The duration of each note is set to 1 second.
  4. Make sure your computer's audio output is configured correctly to hear the generated sound.

Example

import numpy as np
import pyaudio

# Set up the audio stream
p = pyaudio.PyAudio()
stream = p.open(format=pyaudio.paFloat32,
             channels=1,
             rate=44100,
             output=True)

# Define the pentatonic scale frequencies
pentatonic_scale = [261.63, 293.66, 329.63, 392.00, 440.00, 523.25]

# Generate and play the sine waves
for freq in pentatonic_scale:
 duration = 1.0  # Duration in seconds
 t = np.linspace(0, duration, int(duration * 44100), False)
 samples = np.sin(2 * np.pi * freq * t)
 stream.write(samples.astype(np.float32).tobytes())

# Clean up the audio stream and terminate PyAudio
stream.stop_stream()
stream.close()
p.terminate()

About

Demonstrates how to play the pentatonic scale programmatically using Python and PyAudio

Topics

Resources

Stars

Watchers

Forks

Languages