tuzz/audio_mixer

An efficient, cross-platform Rust crate that mixes together audio from different

sources, such as sound files and sine waves

AudioMixer

. It has an extremely minimal interface (iterators) and is written with performance in mind.

I wrote this crate because I initially tried to use rodio and ran into lots of problems with performance and with audio playing in the wrong channels. I haven't published this crate yet but you can install from the GitHub URL if you wish.

How to use

use audio_mixer::AudioMixer;

fn main() {
  let mixer = AudioMixer::default();

  mixer.add(Silence);
  mixer.add(Silence);

  mixer.wait(); // Wait until all sources have finished (optional).
}

struct Silence;

impl Iterator for Silence {
  type Item = f32;

  fn next(&mut self) -> Option<Self::Item> {
      Some(0.) // Return your audio sample here, or None when finished.
  }
}

Check out the other examples for programs that actually make sounds.

Information - Updated Jun 05, 2022

Stars: 3
Forks: 0
Issues: 0

Repositories & Extras

Mini Audio Rust Bindings

For more examples, check out the examples directory

Mini Audio Rust Bindings
IDE

863

GLICOL (an acronym for &quot;graph-oriented live coding language&quot;) is a computer music language written in...

Also, the Rust code of Glicol can be used as a standalone Rust audio library

GLICOL (an acronym for &quot;graph-oriented live coding language&quot;) is a computer music language written in...

Symphonia is a pure Rust audio decoding and media demuxing library supporting AAC, OGG, FLAC,...

Symphonia is a pure Rust audio decoding and media demuxing library supporting AAC, OGG, FLAC, MP3, and WAV

Symphonia is a pure Rust audio decoding and media demuxing library supporting AAC, OGG, FLAC,...

A crossplatform Rust bindings for the soloud audio engine library

Supported formats: wav, mp3, ogg, flac

A crossplatform Rust bindings for the soloud audio engine library

Audioserve is an audio and audio book server with a simple setup

Simple and easy to use audio and audiobook Rust web platform written in Rust

Audioserve is an audio and audio book server with a simple setup

A crate for working with audio in Rust

This is made up of several parts, each can be used independently of each other:

A crate for working with audio in Rust

Rust bindings for JACK Audio Connection Kit

Rust bindings for :heart: Sponsor

Rust bindings for JACK Audio Connection Kit

Experimental repository for some audio code written in Rust

Primary purpose: to help me learn Rust, while also playing with audio and signal

Experimental repository for some audio code written in Rust

Library for pure Rust advanced audio synthesis

Fast: Auto-vectorized audio synthesis

Library for pure Rust advanced audio synthesis

The Rust Audio Player Daemon

Rapd is not a spotify client, or an advanced music player

The Rust Audio Player Daemon
Facebook Instagram Twitter GitHub Dribbble
Privacy