Giter VIP home page Giter VIP logo

soundgenerator's Introduction

Sound Generator with Nodal Interface

I don't have a good name at this time, but this software will be renamed later.

Description

This software is a nodal editor that allow you to create sounds from several generators (sine wave, square wave, etc.) and modulate them (frequency, amplitude, etc.) and modify them (delay, repeat, etc.).

Warnings

This is currently in alpha version.
It still lack of features and components: there a lot more to be done.
But the software is fully functionnal and have all the core features.
See the roadmap to beta version to get an idea of what is still to be done.

There is currently only Windows 8/10 builds
If you want this software on other platform, please download Qt and build it yourself (see the Technical Informations section to get Qt).
You can also contribute by providing your build to share it with other people.

Controls

Press any buttons from the left side to add a component in the scene.
You can also drag and drop from one of those buttons to add a component at a position.
Or you can right click > add in the scene to add a component at a position.

You can select components with mouse left button and drag them around the scene.
You can delete selected components with right click > remove or by pressing delete key.
(note that the output component cannot be removed)

Press a component pin with left mouse button and hold it until you release it on another pin.
An output pin cannot be connected to another output pin (same for input pins), and you cannot connect components in a loop.

In order to play a sound, you have to generate it with the menu Audio > Generate or by pressing F5.
You can auto-generate the sound when play button is pressed, or when a modification is made, in the audio menu.

Common shortcuts:

  • Ctrl+A: select all the components;
  • Ctrl+C/Ctrl+V: copy/paste components (except the output);
  • Ctrl+Z/Ctrl+Y: undo/redo your modifications.

Features

  • Base sound signals : Sinus, Square, Triangle, Sawtooth, Random (White noise);
  • Mix sound signals with operators like Add, Multiply;
  • Modify sound signals with Delay, Repeat and ADSR;
  • Save and load projects;
  • Save resulting sound in wav file.

Visit the planned features to see what are the next features to come.
Warning: this project is made on my freetime, so it can take a while before releasing a new version.

If you think of another feature, or you found bugs, please go to the issue panel to report it, or fix it yourself and do a Pull Request to contribute to the software.
(Be careful of the licenses from Qt and this software if you modify it for your own purpose)

Technical informations

This project is made with Qt 5.12.2 and QtCreator 4.8.2.
You can get Qt from here
And if you want to use QtCreator, get it from here.

You can use another version of Qt or QtCreator but I cannot guarranty that it can compile or the software runs correctly.

License


This project is under GNU General Public License (GPLv3) version 3.
Copyright (c) 2019-2020 Benoît Pelletier
Please refer to this software license text here, and third party attributions here.

soundgenerator's People

Contributors

benpyton avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.