AudioWaveformGenerator

class modusa.generators.audio_waveforms.AudioWaveformGenerator[source]

Bases: ModusaGenerator

Generates different kinds of audio waveforms particulary helpful in teaching signal processing concepts and testing out newly created tools.

static generate_example() AudioSignal[source]

Generates a simple sine wave audio signal as an example.

Returns:

A 600 Hz sine wave lasting 2 seconds, sampled at 10,000 Hz.

Return type:

AudioSignal

static generate_random(duration: float = 1.0, sr: int = 10000) AudioSignal[source]

Generates a random audio signal of given duration and sample rate.

Parameters:
  • duration (float, optional) – Duration of the signal in seconds (default is 1.0).

  • sr (int, optional) – Sampling rate in Hz (default is 10,000).

Returns:

A randomly generated signal of the specified duration and sample rate.

Return type:

AudioSignal

static generate_sinusoid(A: float | int = 1.0, f: float | int = 10.0, phi: float | int = 0.0, duration: float | int = 1.0, sr: int = 1000) AudioSignal[source]

Generates a sinusoid audio signal with specified amplitude, frequency, phase, duration, and sample rate.

Parameters:
  • A (float) – Amplitude of the sinusoid (default: 1.0)

  • f (float) – Frequency in Hz (default: 10.0)

  • phi (float) – Phase in radians (default: 0.0)

  • duration (float) – Duration of the signal in seconds (default: 1.0)

  • sr (int) – Sampling rate in Hz (default: 1000)

Returns:

A sinusoidal signal with the given parameters.

Return type:

AudioSignal

static generate_square(A: float | int = 1.0, f: float | int = 10.0, phi: float | int = 0.0, duration: float | int = 1.0, sr: int = 1000) AudioSignal[source]

Generates a square wave audio signal with specified amplitude, frequency, phase, duration, and sample rate.

Parameters:
  • A (float) – Amplitude of the square wave (default: 1.0)

  • f (float) – Frequency in Hz (default: 10.0)

  • phi (float) – Phase in radians (default: 0.0)

  • duration (float) – Duration of the signal in seconds (default: 1.0)

  • sr (int) – Sampling rate in Hz (default: 1000)

Returns:

A square wave signal of the specified parameters.

Return type:

AudioSignal

static generate_sawtooth(A: float | int = 1.0, f: float | int = 10.0, phi: float | int = 0.0, duration: float | int = 1.0, sr: int = 1000) AudioSignal[source]

Generates a sawtooth wave AudioSignal with specified amplitude, frequency, phase, duration, and sample rate.

Parameters:
  • A (float) – Amplitude of the sawtooth wave (default: 1.0)

  • f (float) – Frequency in Hz (default: 10.0)

  • phi (float) – Phase in radians (default: 0.0)

  • duration (float) – Duration of the signal in seconds (default: 1.0)

  • sr (int) – Sampling rate in Hz (default: 1000)

Returns:

A sawtooth wave signal of the specified parameters.

Return type:

AudioSignal

static generate_triangle(A: float | int = 1.0, f: float | int = 10.0, phi: float | int = 0.0, duration: float | int = 1.0, sr: int = 1000) AudioSignal[source]

Generates a triangle wave AudioSignal with specified amplitude, frequency, phase, duration, and sample rate.

Parameters:
  • A (float) – Amplitude of the triangle wave (default: 1.0)

  • f (float) – Frequency in Hz (default: 10.0)

  • phi (float) – Phase in radians (default: 0.0)

  • duration (float) – Duration of the signal in seconds (default: 1.0)

  • sr (int) – Sampling rate in Hz (default: 1000)

Returns:

A triangle wave signal of the specified parameters.

Return type:

AudioSignal