vorbis_decoder_ffi 0.2.1
vorbis_decoder_ffi: ^0.2.1 copied to clipboard
Ogg Vorbis decoder for Flutter on Android, iOS, and macOS, powered by stb_vorbis through FFI. Decodes in-memory Ogg streams to interleaved 16-bit PCM.
Changelog #
0.2.1 #
- Shorten the package description to satisfy pub.flutter-io.cn metadata conventions.
- Keep the iOS and macOS podspec versions aligned with the Dart package.
0.2.0 #
probeOgg: read channels, sample rate, and exact decoded length (VorbisInfo) without decoding any PCM — header parse + last-page scan only.decodeOggInto: decode directly into a caller-provided native buffer, skipping the intermediate native allocation and the native → Dart copy. Buffer ownership stays with the caller; a too-small buffer throwsVorbisDecodeExceptionwithVorbisDecodeException.outputTooSmall(nothing is ever written past the given capacity).decodeOgg: the native PCM buffer is now allocated once at its exact final size (probed from the stream's last page) instead of growing via repeatedrealloc, removing transient memory peaks; a grow-as-you-go fallback remains for streams with a damaged or missing last page.- New native entry points
vorbis_decoder_probe_memory/vorbis_decoder_decode_into; new error codesVORBIS_DECODER_ERROR_OUTPUT_TOO_SMALL(100) andVORBIS_DECODER_ERROR_STREAM_TOO_LARGE(101), plus integer-overflow guards on the PCM size computations.
0.1.0 #
- Initial release.
decodeOgg/decodeOggAsync: decode a complete in-memory Ogg Vorbis stream to interleaved 16-bit PCM (VorbisDecoded), backed by the public-domainstb_vorbisdecoder overdart:ffi.- Platforms: iOS (Swift Package Manager, CocoaPods fallback), Android (CMake/NDK), macOS (Swift Package Manager, CocoaPods fallback).
- Host-machine test support via
VORBIS_DECODER_FFI_LIBRARY/vorbisDecoderLibraryOverrideandtool/build_host_lib.sh.