crime

Crates.iocrime
lib.rscrime
version0.4.2
created_at2025-07-25 15:59:52.201549+00
updated_at2026-01-13 22:28:13.721244+00
descriptionConcurrent real-time interface for multimedia engines
homepagehttps://github.com/rimelabs/crime
repositoryhttps://github.com/rimelabs/crime
max_upload_size
id1767788
size104,541
Ryan Li (ryanli)

documentation

README

Concurrent real-time interface for multimedia engines

The crime crate is useful for real-time multimedia applications for providing different output audio formats where the input is a stream of samples, typically coming from a machine-learning model which generates a fixed amount of samples in fp32.

This crate operates entirely on streams, provides delay compensation for each supported operation, and thus eliminates the need for providing padding and/or flushing the buffer. The first audio signal in the input is guaranteed to correspond to the first audio signal in the output, and likewise for the last signal.

Current functionalities:

  • Input and outputs in futures::Stream.
  • Resampling.
  • Streaming audio codec (PCM, WAV, MP3).
  • Time scaling (using WSOLA).

Supported codecs:

  • Headerless sample stream
    • Linear PCM (i16, f16, f32, all little-endian)
    • G.711 μ-law
  • MP3
  • WAV
    • Linear PCM (i16, f16, f32, all little-endian)
Commit count: 20

cargo fmt