Skip to content
Tags give the ability to mark specific points in history as being important
  • v0.12 protected
    a55c164e · Update copyright dates. ·
    Release: v0.12
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk or over http(s).
    
    opusfile depends on libopus and libogg.
    opusurl depends on opusfile and openssl.
    
     - Fix stack overflow buffering out-of-sequence streams.
     - Fix possible divide-by-zero.
     - Fix issues with seeking in the win32 backend.
     - Fix an issue where the seek algorithm could be confused
       by stream data changing between reads.
     - Clean up compiler and scan-build warnings.
     - Avoid use of the deprecated ftime() function
       which has Y2038 problems.
     - Remove undefined behaviour memcpy(NULL) in op_read_native().
     - Visual Studio project files updated for libogg 1.3.4 library name change.
     - Various build systems updates.
     - Various integration and testing environment improvements.
    
    This release is backward-compatible with the previous
    release. We recommend all users upgrade.
    
    Note that because of the removal of certificate store hooks
    in openssl 1.1.1 and later, there are unfortunately no
    supported versions of that library which can be used with
    the code in opusurl to validate https responses against
    the system certificate store on Windows. Using the system
    default access to the certificate store on other platforms
    works fine.
    
    Programming documentation is available in-tree and online
    at https://opus-codec.org/docs/
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net, opus@xiph.org, or at
    https://gitlab.xiph.org/xiph/opusfile.
    
  • v0.11 protected Release: v0.11
    opusfile version 0.11
    
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk or over http(s).
    
    opusfile depends on libopus and libogg.
    opusurl depends on opusfile and openssl.
    
    Changes since the v0.10 release:
     - Fix two potential integer overflows.
       (These were not security-critical unless the compiler took the opportunity
       provided by the undefined behavior to format your hard drive.)
     - Allow JPEGs in METADATA_BLOCK_PICTURE tags to include EXIF data.
     - A few warning fixes for gcc 8.
     - Make opus_tags_copy return OP_EFAULT on failure instead of returning success.
     - Various integration and testing environment improvements.
    
    This release is backward-compatible with the previous
    release. We recommend all users upgrade.
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
    Programming documentation is available in tree and online
    at https://opus-codec.org/docs/
    
  • v0.10 protected
    opusfile version 0.10
    
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk or over http(s).
    
    opusfile depends on libopus and libogg.
    opusurl depends on opusfile and openssl.
    
    Changes since the v0.9 release:
     - Fix an out-of-bounds read matching serial numbers.
    
    This release is backward-compatible with the previous
    release. We recommend all users upgrade.
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
    Programming documentation is available in tree and online
    at https://opus-codec.org/docs/
    
  • v0.9 protected
    opusfile version 0.9
    
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk or over http(s).
    
    opusfile depends on libopus and libogg.
    opusurl depends on opusfile and openssl.
    
    Changes since the v0.8 release:
     - Fix an invalid free with tag handling.
     - Improve handling of corrupt streams.
     - Improve performance on streams with many chain segments.
     - Improve TLS host validation.
     - Align op_raw_total to work better with op_raw_seek.
     - Documentation and build improvements.
    
    This release is backward-compatible with the previous
    release. We recommend all users upgrade.
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
    Programming documentation is available in tree and online
    at https://opus-codec.org/docs/
    
  • v0.8 protected
    opusfile version 0.8
    
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk or over http(s).
    
    opusfile depends on libopus and libogg.
    opusurl depends on opusfile and openssl.
    
    Changes since the v0.7 release:
     - Add support for OpenSSL 1.1.x.
     - Fix issues with tag parsing introduced in v0.7.
     - Fix skip logic for multiplexed non-Opus data.
    
    This release is backward-compatible with the previous
    release. We recommend all users upgrade.
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
    Programming documentation is available in tree and online
    at https://opus-codec.org/docs/
    
  • v0.7 protected
    opusfile version 0.7
    
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk or over http(s).
    
    opusfile depends on libopus and libogg.
    opusurl depends on opusfile and openssl.
    
    Changes since the v0.6 release:
     - Add API to access and preserve binary metadata.
     - Add support for R128_ALBUM_GAIN metadata tag.
     - Better seeking with continued packets and multiplexed streams.
     - Portability and build fixes.
    
    This release is backward-compatible with the previous
    release but contains updates to conform with the latest
    IETF Ogg Opus draft, important performance enhancements,
    and bug fixes. We recommend all users upgrade.
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
    Programming documentation is available in tree and online
    at http://opus-codec.org/docs/
    
  • v0.6 protected
    f67e6136 · Bump soname for v0.6. ·
    opusfile version 0.6
    
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk or over http(s).
    
    opusfile depends on libopus and libogg.
    opusurl depends on opusfile and openssl.
    
    Changes since the v0.5 release:
     - Fix bugs with comment handling
     - Fix build for BSD
     - Fix bugs handling invalid and non-opus streams
    
    Some of these bugs kept basic functionality of the APIs from
    working at all, so we recommend all users upgrade.
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
    Programming documentation is available in tree and online
    at http://opus-codec.org/docs/
    
  • v0.5 protected
    opusfile version 0.5
    
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk or over http(s).
    
    opusfile depends on libopus and libogg.
    opusurl depends on opusfile and openssl.
    
    Changes since the v0.4 release:
     - Report HTTP (ICY) headers to client
     - New tag comparison and copy functions
     - New application decoding callback API for advanced clients
     - New dither disable function for advanced clients
     - constify API
     - Avoid clipping downmixing from a fixed-point decoder
     - Better practices for dual stack IPv6
     - Documentation improvements
     - Fix a unicode bug on Windows
     - Fix proxy user/password macros
     - Fix HTTP pipelining support detection
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
    Programming documentation is available in tree and online
    at http://opus-codec.org/docs/
    
  • v0.4 protected
    opusfile version 0.4
    
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk or over http.
    
    It depends on libopus, libogg, and openssl.
    
    Changes since the previous release:
    
    - New API to parse album art tags.
    - Visual Studio project file fixes.
    - Include Visual Studio projects in source package.
    - Minor unicode fixes.
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
  • v0.3 protected
    opusfile version 0.3
    
    The opusfile and opusurl libraries provide a high-level API for
    decoding and seeking within .opus files on disk and over http.
    
    It depends on libopus, libogg, and openssl.
    
    Changes since the previous release:
    
    - Fix a buffer overflow downmixing multichannel files.
    - UTF-8 filename support on Windows.
    - HTTP(S) url support on Windows.
    - Support Windows system certificate store for HTTPS.
    - New project files for MS Visual Studio.
    - New gain control API with op_set_gain_offset() and op_get_track_gain().
    - Documentation and build improvements.
    - HTTP(S) support split into a separate opusurl library.
    - Implement soft-clip for paths where libopus doesn't.
    - opusfile_example now outputs WAV.
    - Fix http basic auth.
    - Fix 255 packet-per-page assert.
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
  • v0.2 protected
    opusfile version 0.2
    
    This is the second release of libopusfile. Like libvorbisfile for
    Vorbis files, libopusfile provides a high-level API for decoding
    and seeking within .opus files.
    
    Changes since the previous release:
    
    - Accept valid SSL certificates.
    - Various build and packaging fixes.
    
    The library is functional, but there are likely issues
    we didn't find in our own testing. Please give feedback
    in #opus on irc.freenode.net or at opus@xiph.org.
    
  • v0.1 protected
    opusfile version 0.1
    
    This is the initial release of libopusfile. Like libvorbisfile for
    Vorbis files, libopusfile provides a high-level API for decoding
    and seeking within .opus files. It includes:
    
    - Support for all files with at least one Opus stream (including
      multichannel files or Ogg files where Opus is muxed with
      something else).
    - Full support, including seeking, for chained files.
    - A simple stereo downmixing API (allowing chained files to be
      decoded with a single output format, even if the channel count
      changes).
    - Support for reading from a file, memory buffer, or over HTTP(S)
      (including seeking).
    - Support for both random access and streaming data sources.
    - Complete documentation of the public API.
    - Two simple examples demonstrating the API.
    
    The code has undergone basic testing, but as this is the first
    release, there are still likely to be issues we didn't find. Please
    give feedback in #opus on irc.freenode.net or at opus@xiph.org.