Skip to content

bansky0/PureWaveShaper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PureWaveShaper: DSP Algorithms | Algoritmos de DSP

Description | Descripción

PureWaveShaper is a library of Digital Signal Processing (DSP) algorithms implemented using the JUCE framework. It provides efficient and reusable components for audio processing applications, designed for both professional audio developers and students exploring audio effects and tools design.

PureWaveShaper es una librería de algoritmos de procesamiento digital de señales (DSP) implementada con el framework JUCE. Su objetivo es proporcionar componentes eficientes y reutilizables para aplicaciones de procesamiento de audio, dirigidos tanto a desarrolladores de audio profesionales como a estudiantes interesados en explorar el diseño de efectos y herramientas de audio.


Table of Contents | Tabla de Contenidos


1. Introduction | Introducción

PureWaveShaper is ideal for:

  • Audio developers looking to expand their toolkit.
  • Students eager to learn DSP with ready-to-use algorithms.
  • Sound designers aiming to customize or build audio effects.

The library includes classic DSP algorithms such as filters (FIR, IIR, Biquad), modulations (chorus, vibrato), distortions, delay effects, and more.

PureWaveShaper es ideal para:

  • Desarrolladores de audio interesados en ampliar su conjunto de herramientas.
  • Estudiantes que desean aprender DSP aplicando algoritmos listos para usar.
  • Diseñadores de sonido que buscan personalizar o construir efectos de audio.

Esta librería incluye implementaciones de algoritmos clásicos como filtros (FIR, IIR, Biquad), modulaciones (chorus, vibrato), distorsiones, efectos de retardo, y más.


2. Installation | Instalación

Steps | Pasos

  1. Clone the repository | Clonar el repositorio
   git clone https://github.com/bansky0/PureWaveShaper
  1. Copy the DSP folder | Copiar la carpeta DSP

Place the DSP folder inside the Source folder of your JUCE project:

Coloca la carpeta DSP dentro de la carpeta Source de tu proyecto JUCE:

ProjectName/
├── Source/
│   ├── DSP/
│   └── MainComponent.cpp
  1. Optional: Add the Assets folder | Opcional: Añadir la carpeta Assets

If you want to use the included examples (suggested), copy the Assets folder next to the Source folder.

Si se desea incluir los ejemplos (sugerido), copia la carpeta Assets junto a la carpeta Source.

  1. Update Projucer | Configurar Projucer

Open your .jucer file in Projucer and add the DSP folder as part of the project. Then, rebuild the project files.

Abrir el archivo .jucer en Projucer y añadir la carpeta DSP como parte del proyecto. Luego, volver a construir los archivos dle proyecto.


3. Features | Características

  • Modularity | Modularidad: Algorithms are designed for easy integration into JUCE projects. | Los algoritmos están diseñados para una integración fácil en proyectos de JUCE.
  • Variety | Variedad: Includes over 90 algorithms, such as filters, modulations, distortions, and spatial effects. | Incluye alrededor de 90 algoritmos, como filtros, moduladores, distorsiones, y efectos espaciales.
  • Optimization | Optimización: Implemented for optimal performance, leveraging real-time processing capabilities. | Implementaciones para rendimiento optimo, aprovechando las capacidades de procesamiento en tiempo real.

4. Usage | Uso

Creating a new project | Crear un nuevo proyecto

  1. Download and install JUCE from here. | Descargue e instale JUCE desde aquí.
  2. Open Projucer and create a new project: | Abra Projucer y cree un nuevo proyecto:
    • Go to File > New Project. | Vaya a Archivo > Nuevo Proyecto.
    • Select Plugin > Basic. | Seleccione Complemento> Básico.
    • Name your project (e.g., PureWaveExample). | Asigne un nombre a su proyecto (por ejemplo, PureWaveExample).
    • Save it in your desired folder. | Guárdelo en la carpeta que desee.
  3. Open the .jucer file to configure the project as described in the installation section. | Abra el archivo .jucer para configurar el proyecto como se describe en la sección de instalación.

Adding the DSP library | Agregar la librería DSP

Follow the steps in the Installation section to add the DSP folder to your project.

Siga los pasos en la sección Instalación para agregar la carpeta DSP a su proyecto.


5. List of Algorithms | Lista de Algoritmos

The library includes a wide range of algorithms categorized as follows:

La librería incluye una amplia gama de algoritmos categorizados como sigue:

Filters | Filtros

  • FIR: FIR_LPF, FIR_LPF2
  • IIR: IIR_HPF, IIR_LPF, IIR_Notch
  • Biquad: Biquad_LPF, Biquad_HPF, Biquad_Notch

Modulations | Modulaciones

  • VibratoEffect
  • ChorusEffect
  • BarberPoleFlangerEffect

Distortions | Distorsiones

  • HardClipping
  • ExponentialDistortion
  • ArctangentDistortion

Delay Effects | Efectos de Retardo

  • SimpleDelay
  • PingPongEcho
  • ModularDelay

Wave Generators | Generadores de Ondas

  • SineWave
  • SquareWave
  • ImpulseTrain

(See the full list in Documentation/AlgorithmList.md.)

(Consulta la lista completa en Documentation/AlgorithmList.md.)


6. Contributing | Contribuciones

If you wish to contribute:

  1. Fork the repository.
  2. Create a new branch for your changes.
  3. Submit a Pull Request with a clear description.

Si deseas contribuir:

  1. Realiza un fork del repositorio.
  2. Crea una nueva rama para tus cambios.
  3. Envía un Pull Request con una descripción clara.

7. Acknowledgments | Agradecimientos**

  • Thanks to the JUCE team for their framework. | Gracias al equipo JUCE por su marco.

  • Key references: | Referencias clave:

    Hack Audio: An Introduction to Computer Programming and Digital Signal Processing in MATLAB (E. Tarr, 2018).


8. Contact | Contacto

For inquiries or suggestions, contact: Para consultas o sugerencias, contáctame:

Email | Correo: support@jhonatanlopez.com GitHub: bansky0

About

DSP Algorithms for JUCE

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages