WaveCraft is a C language project designed to generate musical waveforms. It can produce audio files in WAV or MP3 format based on specified note sequences and supports real-time playback using the ALSA library.
Ensure you have the following libraries installed:
- libsndfile: For handling audio files.
- lame: For MP3 encoding.
- alsa-lib: For audio playback (Linux).
- Math Library: Standard C math library.
On Debian/Ubuntu, you can install these dependencies with the following commands:
sudo apt-get update
sudo apt-get install libsndfile1-dev libmp3lame-dev libasound2-dev
Use the Makefile to build the project:
make
This will compile the source code and generate an executable named wavecraft
in the bin/
directory.
To run WaveCraft, use the following command:
./bin/wavecraft
Try run ./bin/wavecraft --help
Contributions are welcome! Please follow these steps:
- Fork this repository.
- Create a new branch (
git checkout -b feature/new-feature
). - Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature/new-feature
). - Submit a Pull Request.
This project is licensed under the LGPL v3.0 License. See the LICENSE file for details.
Thank you to everyone who has contributed to and supported this project!