A person using Audiocraft to create music with an AI tool.

Audiocraft Tutorial: Master Music Creation with This AI Tool

What is Audiocraft?

On June 9, 2023, Meta launched Audiocraft, an innovative AI tool designed for music generation and audio processing. Unlike Google’s MusicLM, Audiocraft stands out as an open-source platform, enabling users to explore and experiment freely. In this article, we will guide you through the installation process, how to extend the duration limit for creating full-length songs, and how to integrate Audiocraft into a Streamlit app. Let’s dive in!

Prerequisites

  • Python 3.9 installed
  • Pip for package management
  • PyTorch 2.0
  • FFmpeg for multimedia processing

Installation

To start, you first need to clone the official GitHub repository of Audiocraft and navigate to the downloaded folder. Then, install the required libraries:

pip install torch torchvision torchaudio

For FFmpeg, use the command:

brew install ffmpeg  # MacOS

Once you have the prerequisites sorted, you’re ready to kickstart your music creation journey!

Creating Music with Audiocraft

To utilize MusicGen, Audiocraft’s module for creating music, Meta provides a Gradio UI. Run the following command to access it:

python musicgen_app.py

This will launch the UI at http://127.0.0.1:7860/. A public URL will also be set up for collaboration. Note that the first-time setup may take a while as models need to be downloaded, especially on machines without powerful GPUs.

Users can choose from four models that affect the musical output. The "facebook/musicgen-melody" model produces melody-driven music based on uploaded tracks, while others use text as input to generate ambient music.

Extending Duration Limits

Initially, the maximum song duration is limited to 120 seconds. If you wish to create longer pieces, follow these steps:

  1. Navigate to the demos folder and open musicgen_app.py.
  2. Find the "duration" variable (located around line 240).
  3. Modify this value to your desired length. For example, to create a standard 3:20 minute track, set it to 200 seconds.
  4. Save your changes and restart the app using Ctrl+C followed by rerunning the start command.

Keep in mind that longer durations may lead to longer rendering times, especially if you are working with large compositions.

Integrating Audiocraft into an Existing Project

Let’s explore how to incorporate Audiocraft into a pre-existing codebase. We will create a simple application to generate a song description based on a provided URL, feeding this information into Audiocraft to create audio content.

  1. Create a folder named audiocraft_app.
  2. Create a Python file named audiocraft_app.py and a requirements.txt file.
  3. Fill requirements.txt with necessary libraries.
  4. Install the libraries.
  5. Write your Python code in audiocraft_app.py.

After saving your file, run your app using:

streamlit run audiocraft_app.py

The app should be accessible at http://localhost:8501/. Enter your OpenAI API Key, select a ChatGPT model based on the content length, and input the URL. Hitting the "Create Song" button begins the audio generation process.

If set up properly, your app will display a success message along with the generated song description, and the corresponding WAV file will be located in your project root folder. The default setup creates a 5-second sample using the "facebook/musicgen-small" model. Feel free to experiment with longer durations and different models!

Conclusion

Audiocraft offers exciting possibilities for creators looking to innovate in music generation. By following the outlined steps, you can harness the power of AI to craft your unique compositions and even integrate this tool into your existing projects. Start experimenting today and uncover the next big musical masterpiece!

Back to blog

Leave a comment