Skip to content
generated from element-hq/.github

A Swift library for converting to and from opus/ogg format

License

Notifications You must be signed in to change notification settings

element-hq/swift-ogg

Repository files navigation

swift-ogg

This library provides a very simple API to convert between opus/ogg and MPEG4AAC/m4a files. It uses opus's libopus libogg to convert between opus/ogg and linear PCM audio data and native iOS apis to convert between PCM and MPEG4AAC/m4a(but could be very easily adapted to use any other codec/container supported by iOS). Apple's recording and playback APIs from AVFoundation can then be used quite simply with a codec/container pair that iOS natively supports (MPEG4AAC/m4a in this case).

Usage

    let src:URL = ...
    let dest:URL = ...
    let dest2:URL = ...
    do {
        // Convert to OGG
        try OGGConverter.convertM4aFileToOpusOGG(src: src, dest: dest)
        // And back to M4a
        try OGGConverter.convertOpusOGGToM4aFile(src: dest, dest: dest2)
    } catch {
        // handle error
    }

Licence

Portions of the swift-ogg library contain code derived from watson-developer-cloud/swift-sdk under the Apache License 2.0

This project makes use of opus-swift and ogg-swift which package the source code of libopus and libogg as platform independent XCFrameworks. These two projects are under the MIT licence while the underlying libopus and libogg library source themselves are included under the BSD Licence described here

About

A Swift library for converting to and from opus/ogg format

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published