Skip to content
This repository was archived by the owner on Mar 9, 2026. It is now read-only.

catalogworks/cr-transcoder-public

Repository files navigation

cr-transcoder

cr-transcoder is a server based architecture for transcoding, storing and providing metadata enriched audio downloads.

Install

To install dependencies:

bun install

Development

To start the development containers locally:

bun dev

Diagram

flowchart TD
    Client["Client Application"]
    Redis["Redis (BullMQ): Job Queue System"]
    Worker["Elysia Worker Server: Transcoding Service"]
    Minio["Minio Object Storage: 30-day retention"]
    Check{"Format exists? TxId updated?"}
    Trans["ffmpeg Processing - Audio Transcoding - Metadata Embedding - Zip Creation"]
    Store["Store Processed Files"]
    URL["Return Pre-signed S3 Object URL"]

    Client -->|"Request Download (Release ID + Format)"| Check
    Check -->|"Cache Hit"| URL
    Check -->|"Cache Miss"| Redis
    Redis -->|"Queue Job"| Worker
    Worker --> Trans
    Trans -->|"Processed Files"| Store
    Store -->|"Object Location"| URL
    URL -->|"Temporary Download URL"| Client

    subgraph "Storage System"
        Minio
    end

    subgraph "Supported Formats"
        Formats["Lossless: - ALAC (Apple Lossless/MP4) - FLAC - WAV - AIFF  Lossy: - MP3 (320/192 kbps) - AAC (MP4) - OGG (Vorbis)"]
    end

    subgraph "Processing Pipeline"
        Trans
    end

    classDef primary fill:#f0f8ff,stroke:#333,stroke-width:2px
    classDef secondary fill:#e6e6fa,stroke:#333,stroke-width:2px
    class Client,Worker,Redis,Minio primary
    class Formats,Trans secondary
Loading

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors