dummy-link

Opus

Julia library to interface with Opus audio files

Readme

Opus

Build Status

Basic bindings to libopus to encode/decode Opus streams. Opus is a low-latency yet high-quality audio codec with an impressive set of features and very simple API. Note that a common surprise with Opus is that it supports a very limited set of samplerates. Do yourself a favor and just resample any audio (with, for example, a polyphase resampler from DSP.jl) you have to 48 KHz before encoding.

Basic usage is to use load() and save() to read/write Opus streams to/from file paths, IO streams, etc., but the real fun to be had is in an IJulia notebook with OpusArrays. These thin wrapper objects contain a show() implementation allowing you to output raw audio as Opus to a reasonably modern browser. To try it out, put the following in an IJulia notebook:

using Opus

# Create a seconds worth of 440Hz
t = linspace(0,1,48000)
audio = sin(2*π*440*t)

z = OpusArray(audio)

First Commit

04/30/2016

Last Touched

about 1 month ago

Commits

26 commits

Used By: