MCPcopy Index your code
hub / github.com/AarhamH/chamber

github.com/AarhamH/chamber @chamber-v0.1.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release chamber-v0.1.2 ↗ · + Follow
209 symbols 502 edges 54 files 1 documented · 0% updated 6mo agochamber-v0.1.2 · 2026-01-05★ 421 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Logo

chamber

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






<a>Demo coming soon...</a>

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 sh $ git clone https://github.com/AarhamH/chamber.git
  2. Install NPM packages sh $ npm install
  3. Run npm setup. This step is necessary as it bundles ffmpeg and yt-dlp into the Tauri build sh $ npm run setup
  4. Run the Tauri dev environment sh $ npm run chamber //this will not re-render app when Rust change is made sh $ 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: aarham.haider@gmail.com

(back to top)

Extension points exported contracts — how you extend this code

AudioContextType (Interface)
(no doc)
src/components/AudioContext.tsx
SearchSuggestion (Interface)
(no doc)
src/pages/SearchPage.tsx
AllAudioModalProps (Interface)
(no doc)
src/components/table/AllAudioModal.tsx

Core symbols most depended-on inside this repo

cn
called by 39
src/lib/utils.ts
establish_connection
called by 18
src-tauri/src/db.rs
copy_file_to_destination
called by 6
src-tauri/src/helper/files.rs
get_db_path
called by 5
src-tauri/src/db.rs
get_file_type
called by 5
src-tauri/src/helper/files.rs
audio_store_path
called by 5
src-tauri/src/helper/constants.rs
togglePlay
called by 4
src/components/AudioContext.tsx
extract_file_name
called by 4
src-tauri/src/helper/files.rs

Shape

Function 195
Class 11
Interface 3

Languages

TypeScript56%
Rust44%

Modules by API surface

src-tauri/src/helper/files.rs30 symbols
src/pages/waveform/WaveTrimmer.tsx10 symbols
src/components/AudioContext.tsx10 symbols
src-tauri/src/helper/tools.rs10 symbols
src/components/solidui/Table.tsx8 symbols
src-tauri/src/db.rs8 symbols
src/pages/SearchPage.tsx7 symbols
src/pages/PlaylistPage.tsx7 symbols
src/components/solidui/Sheet.tsx7 symbols
src/components/solidui/Dialog.tsx7 symbols
src-tauri/src/commands/audio_commands.rs7 symbols
src/pages/Transcoding.tsx6 symbols

For agents

$ claude mcp add chamber \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page