Skip to content

Releases: alnitak/flutter_soloud

flutter_soloud v3.2.2

16 Jul 15:37
43a6878
Compare
Choose a tag to compare
  • OGG is now also supported using readSamplesFrom* methods.
  • fix getPosition and buffering for released buffer.

flutter_soloud v3.2.1

28 Jun 21:14
Compare
Choose a tag to compare

What's Changed

  • it is now possible to use a 3rd party plugin like audio_session to manage audio context.
  • new audio context example in example/lib/audio_context/audio_context.dart.
  • fix GetPosition returned value for buffer streams.

New Contributors

flutter_soloud v3.1.12

21 Jun 11:38
31988c2
Compare
Choose a tag to compare
  • added getStreamTimeConsumed() to get the time consumed by a buffer stream of kind BufferingType.released. Since the position of this kind of stream is always 0, this method is useful to know the time already played.
  • fix pause/unpause on audio stream buffering.
  • added buffer_stream/simple_noise_stream.dart example.
buffer_stream_example.mp4

flutter_soloud v3.1.11

16 Jun 13:20
c50abc8
Compare
Choose a tag to compare
  • fix: Loading the same AudioSource twice (in parallel) crashes #247
  • fix win: force cmake to build the plugin in release mode even if building in debug

v3.1.2

27 Mar 10:08
Compare
Choose a tag to compare

What's Changed

Full Changelog: v3.1.1...v3.1.2

v3.1.0

18 Mar 19:56
c1c242c
Compare
Choose a tag to compare

3.1.0

  • when calling AudioData.getAudioData is now possible to check if the audio data is the same as before. Useful to visualize waveforms. This is because AudioData.getAudioData returns the current data in the buffer and if it is called before the buffer has been updated, it will return the previous data.
  • added resetBufferStream method to SoLoud. It happens that when playing a stream, maybe from the web, it is needed to change it to another source. The player continues to play the already added audio data to the buffer. This method can be used to reset the buffer and start with the new audio data.

free to link with opus and ogg libraries

07 Mar 20:04
a4b0ead
Compare
Choose a tag to compare

What's Changed

  • fix: example macos not building because of file_picker needing deployment target 11.5 by @filiph in #193
  • fix: libopus and libogg build issue on macOS by @filiph in #194
  • Embedding of opus and ogg libs on all platforms with a choice of doing this by @alnitak in #195

See NO_OPUS_OGG_LIBS for more info on how this works.

Full Changelog: v3.0.2...v3.0.3

v3.0.0

13 Feb 20:15
a0c0ed2
Compare
Choose a tag to compare

What's Changed

  • BufferStream now supports 2 type of buffering:
    • BufferingType.preserved (default): preserve the data already in the buffer while playing.
    • BufferingType.released: free the memory of the already played data for longer playback.
  • breaking change: splitted [maxBufferSize] to [maxBufferSizeBytes] and [maxBufferSizeDuration] in SoLoud.setBufferStream. This gives the user a way to choose the maximum buffer size using bytes or time.
  • breaking change: removed initialized getter in favor of isInitialized
  • removed deprecated timeout parameter in SoLoud.init.
  • removed deprecated filter_params.dart.
  • fixed biquad resonant filter frequency default parameter #179
  • fix: on some unclear conditions isInitialized returning false on MacOS after engine starts with no error #177
  • fix: Call loadMem will crash the application #174.
  • fix: clicks and pops when changing waveform frequency #156.
  • added Limiter and Compressor filters (see example/lib/filters/).
  • added BufferStream #148. Now it's possible to add audio data and listen to them. It provides a customizable buffering length which automatycally pauses the playing handle if there is not enough data, for example when receiving audio data from the web. It also provides a callback that allows you to know when the buffering is started and stopped. The audio data can of of the following formats:
    • s8 signed 8 bit
    • s16le signed 16 bit little endian
    • s32le signed 32 bit little endian
    • f32le float 32 bit little endian
    • opus Opus codec compressed audio with Ogg container. Useful for streaming from the Web (ie using OpenAI APIs).
  • fixed Web Worker initialization non fatal error that could occur on Web.
  • fixed sound distortion using single pitchShift filter and changing relative play speed #154.
  • fixed the use of LoadMode.disk on the Web platform which in some cases caused the allInstancesFinished event to not be emitted.
  • improved performance on Web, MacOS and iOS.
  • get wave and FFT samples is now simpler and faster.
  • To avoid future incompatibilities when using other WASM compiled plugins, it is now necessary to add a new script to index.html:
    <script src="assets/packages/flutter_soloud/web/libflutter_soloud_plugin.js" defer></script>
    <script src="assets/packages/flutter_soloud/web/init_module.dart.js" defer></script>
    

New Contributors

Full Changelog: v2.1.7...v3.0.0

v3.0.0-pre.0

02 Feb 15:15
Compare
Choose a tag to compare
v3.0.0-pre.0 Pre-release
Pre-release

3.0.0-pre.0

  • fix: clicks and pops when changing waveform frequency #156.
  • added Limiter and Compressor filters (see example/lib/filters/).
  • added BufferStream #148. Now it's possible to add audio data and listen to them. It provides a customizable buffering length which automatycally pauses the playing handle if there is not enough data, for example when receiving audio data from the web. It also provides a callback that allows you to know when the buffering is started and stopped. The audio data can of of the following formats:
    • s8 signed 8 bit
    • s16le signed 16 bit little endian
    • s32le signed 32 bit little endian
    • f32le float 32 bit little endian
    • opus Opus codec compressed audio with Ogg container. Useful for streaming from the Web (ie using OpenAI APIs).
  • fixed Web Worker initialization non fatal error that could occur on Web.
  • fixed sound distortion using single pitchShift filter and changing relative play speed #154.
  • fixed the use of LoadMode.disk on the Web platform which in some cases caused the allInstancesFinished event to not be emitted.
  • improved performance on Web, MacOS and iOS.
  • get wave and FFT samples is now simpler and faster.
  • To avoid future incompatibilities when using other WASM compiled plugins, it is now necessary to add a new script to index.html:
    <script src="assets/packages/flutter_soloud/web/libflutter_soloud_plugin.js" defer></script>
    <script src="assets/packages/flutter_soloud/web/init_module.dart.js" defer></script>
    

flutter_soloud v2.1.7

29 Oct 13:32
8d9d1ba
Compare
Choose a tag to compare

What's Changed

  • Choose output playback device by @alnitak in #141
  • fix: loadAsset future does not fail when an error loading the file occurs. by @alnitak in #146

Full Changelog: v2.1.6...v2.1.7