Skip to content

Conversation

@eXpl0it3r
Copy link
Member

Description

Opus is free / open audio codec and is unmatched for interactive speech and music transmission over the Internet, but is also intended for storage and streaming applications. It is standardized by the Internet Engineering Task Force (IETF) as RFC 6716 which incorporated technology from Skype’s SILK codec and Xiph.Org’s CELT codec.

Original forum discussion.
Original PR: #1077
This PR is an adaptation of #1259 and superseded it.


On Windows I currently don't hear anything when running the sound example, haven't yet figured out why.

Building Opus and Opusfile with FetchContent brought new challenges:

  • The header file don't live in a sub-directory in the source tree and thus opus/ can't be used as path prefix
  • Opusfile does some weird version checking with git, which prevents us from using a shallow clone
  • There are some warnings coming from macros and opus

Tasks

  • Have CI pass
  • Tested on Linux
  • Tested on Windows
  • Tested on macOS
  • Tested on iOS
  • Tested on Android

How to test this PR?

For playback run the sound example.
For writing, I'll provide an example later on.

@eXpl0it3r eXpl0it3r added this to the 3.1 milestone Jan 6, 2025
@eXpl0it3r eXpl0it3r force-pushed the feature/opus-support branch 2 times, most recently from 7cb9cf6 to 3d3d60a Compare January 6, 2025 15:37
@eXpl0it3r eXpl0it3r force-pushed the feature/opus-support branch 2 times, most recently from bea852f to b3b10cd Compare May 12, 2025 07:48
@eXpl0it3r eXpl0it3r force-pushed the feature/opus-support branch from b3b10cd to b1967c0 Compare May 19, 2025 14:16
@eXpl0it3r eXpl0it3r removed this from SFML 3.1.0 Jun 19, 2025
@github-project-automation github-project-automation bot moved this to Planned in SFML 3.2.0 Jun 19, 2025
@eXpl0it3r eXpl0it3r removed this from the 3.1 milestone Jun 19, 2025
@eXpl0it3r eXpl0it3r added this to the 3.2 milestone Aug 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Planned

Development

Successfully merging this pull request may close these issues.

2 participants