Skip to content

Light-weight, performant, and ergonomic audio library built with Tauri

License

Notifications You must be signed in to change notification settings

AarhamH/chamber

Repository files navigation


Logo

chamber

A small, performant, and ergonomic audio library for video editors

Demo coming soon...

Table of Contents
  1. About The Project
  2. Getting Started
  3. Contributing
  4. License
  5. Contact

About The Project

Chamber is a fast and light-weight audio library to handle playback, search & download, transcoding, trimming, and audio recording.

The problem

Compiling audios is HARD! It's often a multi-step process to handle various conversions, each step taking an ample of time. It is also difficult storing it if you have a hard time organizing your files (like I do).

Here is a graph of a common workflow for collecting and converting audio files:

chamber-chart

The real kicker is that you have to do this all over again for the rest of your audios. Chamber attempts to fix this by streamlining all of these steps through concurrency and an ergonomic UI.

Chamber supports the following features:

  • Basic audio playback features and playlist support
  • Parallel downloads from YouTube; add audios to a download queue and download in batches!
  • Transcoding; convert audios into mp3, ogg, opus, m4a, and m4b
  • Waveform trimmer to clip and save sections from an audio
  • (BETA) Audio recorder based on microphone input

Sample pics:

Playlist playlist-cap

YouTube Search search-cap

Audio Trimmer trimmer

(back to top)

Built With

  • Tauri
  • SolidJs
  • Rust

(back to top)

Getting Started

To download chamber on to your machine, it is as easy as downloading the release bundle. However, if you wish to build from source or contribute to the project, refer to the following:

Prerequisites

  1. Install C/C++ build tools
  2. Install Webkit (Linux and Windows only)
  3. Install Rust

Please address these instructions in Tauri's official docs

Installation

  1. Clone the repo
    $ git clone https://github.com/AarhamH/chamber.git
  2. Install NPM packages
    $ npm install
  3. Run npm setup. This step is necessary as it bundles ffmpeg and yt-dlp into the Tauri build
    $ npm run setup
  4. Run the Tauri dev environment
    $ npm run chamber //this will not re-render app when Rust change is made
    $ npm run tauri dev // this will re-render app when Rust change is made

(back to top)

Contributing

Contributions are welcome! If you have an idea for a feature, observed a bug, or want to make a positive change to the codebase, feel free to put up an issue.

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Project Link: https://github.com/AarhamH/chamber

Email: [email protected]

(back to top)

About

Light-weight, performant, and ergonomic audio library built with Tauri

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published