{"library":"opuslib","title":"Opuslib Python Bindings (Original)","description":"Opuslib provides Python bindings to the `libopus` IETF low-delay audio codec. It allows Python applications to encode and decode Opus audio streams. The current version, 3.0.1, was released in January 2018. Note that this specific `opuslib` package is no longer actively maintained; users are encouraged to consider the `opuslib-next` fork for ongoing support and compatibility with newer Python versions.","language":"python","status":"maintenance","last_verified":"Mon May 18","install":{"commands":["pip install opuslib"],"cli":null},"imports":["from opuslib import Encoder","from opuslib import Decoder","import opuslib"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import opuslib\n\n# Encoder parameters\nSAMPLE_RATE = 48000  # Hz\nCHANNELS = 1\nAPPLICATION = opuslib.APPLICATION_AUDIO\nFRAME_SIZE_MS = 20 # milliseconds\nFRAME_SIZE_SAMPLES = int(SAMPLE_RATE * FRAME_SIZE_MS / 1000)\n\n# Create an encoder instance\nencoder = opuslib.Encoder(SAMPLE_RATE, CHANNELS, APPLICATION)\n\n# Example PCM audio data (replace with actual audio)\npcm_data_in = b'\\x00' * FRAME_SIZE_SAMPLES * 2 * CHANNELS # 16-bit mono, silent\n\n# Encode the audio\nencoded_data = encoder.encode(pcm_data_in, FRAME_SIZE_SAMPLES)\nprint(f\"Encoded {len(pcm_data_in)} bytes of PCM into {len(encoded_data)} bytes of Opus.\")\n\n# Create a decoder instance\ndecoder = opuslib.Decoder(SAMPLE_RATE, CHANNELS)\n\n# Decode the audio\ndecoded_data = decoder.decode(encoded_data, FRAME_SIZE_SAMPLES)\nprint(f\"Decoded {len(encoded_data)} bytes of Opus into {len(decoded_data)} bytes of PCM.\")\n\n# It's good practice to free resources if not using context managers (though opuslib handles it)\ndel encoder\ndel decoder","lang":"python","description":"Demonstrates initializing an Opus encoder and decoder, then encoding a block of dummy PCM audio data and decoding it back. Remember to adjust `pcm_data_in` with actual audio samples for real-world use cases.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-18","installed_version":"3.0.1","pypi_latest":"3.0.1","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":100,"avg_install_s":2.5,"avg_import_s":null,"wheel_type":"sdist"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"19.3M"},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":2,"import_time_s":null,"mem_mb":null,"disk_size":"20M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"21.7M"},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":2.1,"import_time_s":null,"mem_mb":null,"disk_size":"22M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"11.6M"},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":3.1,"import_time_s":null,"mem_mb":null,"disk_size":"12M"},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"11.4M"},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":2.7,"import_time_s":null,"mem_mb":null,"disk_size":"12M"},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":"18.9M"},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"opuslib","exit_code":0,"wheel_type":"sdist","failure_reason":null,"import_side_effects":"broken","install_time_s":2.4,"import_time_s":null,"mem_mb":null,"disk_size":"19M"}]}}