record 5.0.5 copy "record: ^5.0.5" to clipboard
record: ^5.0.5 copied to clipboard

Audio recorder from microphone to file or stream with multiple codecs, bit rate and sampling rate options.

5.0.5 #

  • fix: Expose cancel method to stop and discard the recording.
  • feat: Improve convertBytesToInt16 method by exposing endian parameter.

5.0.4 #

  • fix: Regression on creation sequence when disposing AudioRecorder without using it.

5.0.3 #

  • fix: Regression on creation sequence when disposing AudioRecorder without using it.

5.0.2 #

  • fix: Creation sequence which may lead to unexpected behaviours.

5.0.1 #

  • fix: close state stream controller on dispose.

5.0.0 #

  • Chore:

    • Massively reworked platform implementations.
    • Android now uses MediaCodec. Package is now written with kotlin (well...).
    • iOS, macOS code now shares almost the same codebase. Unified under record_darwin package.
    • Windows now uses MediaFoundation shipped with all 10 & 11 versions (no more fmedia executable, yeah! Even if do appreciate the work of stsaz).
  • Features:

    • feat: Add multiple instance support.
    • feat: Add PCM streaming feature & AAC on Android only.
    • feat: Add auto gain control, noise suppressor and echo cancellation where available.
    • feat: Add amplitude on web (Thanks to youssefali424).
    • feat: Add best effort to adjust sample and bit rates to supported values (Android, iOS, macOS).
    • feat: Add cancel() method to stop and remove file if any.
  • Fix:

    • iOS: Should pause/resume recording when interrupted by the system.
    • web: Add duration metadata to created blob (Thanks to youssefali424).
  • Breaking changes:

    • BREAK: Record has been renamed to AudioRecorder to avoid confusion with dart v3.
    • BREAK: path is now required on all IO platforms. Set an empty String on web platform. There no more temp file generation.
    • BREAK: start and startStream method parameters are now wrapped in RecordConfig object.
    • BREAK: samplingRate has been renamed to sampleRate.
    • BREAK: vorbis support has been removed. Too few underlying support.

5.0.0-beta.3+1 #

  • fix: Amplitude timer is not restarted for subsequent recordings.
  • chore: Allow UUID v3 & V4.

5.0.0-beta.3 #

  • fix: Adding events to amplitude stream after close

5.0.0-beta.2 #

  • chore: remove pcm8bit. Virtually still available since we have pcm 16 bits.
  • chore: throw exception when encoder is not supported.
  • fix(web): Multiple issues on web platform.
  • fix: Other minor fixes.
  • feat(web): Add WAVE encoder support (16 bits).
  • feat: add utility method convertBytesToInt16 to convert Uint8List to signed int 16 bits.

5.0.0-beta.1 #

Testers needed to reach release !


  • Chore:

    • Massively reworked platform implementations.
    • Android now uses MediaCodec. Package is now written with kotlin (well...).
    • iOS, macOS code now shares almost the same codebase. Unified under record_darwin package.
    • Windows now uses MediaFoundation shipped with all 10 & 11 versions (no more fmedia executable, yeah! Even if do appreciate the work of stsaz).
  • Features:

    • feat: Add multiple instance support.
    • feat: Add PCM streaming feature & AAC on Android only (for now).
    • feat: Add auto gain control, noise suppressor and echo cancellation where available.
    • feat: Add amplitude on web (Thanks to youssefali424).
    • feat: Add best effort to adjust sample and bit rates to supported values (Android, iOS, macOS).
    • feat: Add cancel() method to stop and remove file if any.
  • Fix:

    • iOS: Should pause/resume recording when interrupted by the system.
    • web: Add duration metadata to created blob (Thanks to youssefali424).
  • Breaking changes:

    • BREAK: Record has been renamed to AudioRecorder to avoid confusion with dart v3.
    • BREAK: path is now required on all IO platforms. Set an empty String on web platform. There no more temp file generation.
    • BREAK: start and startStream method parameters are now wrapped in RecordConfig object.
    • BREAK: samplingRate has been renamed to sampleRate.
    • BREAK: vorbis support has been removed. Too few underlying support.

4.4.4 #

  • chore: Update linter rules.
  • chore: Update dependencies.
  • chore: Update readme.md.

4.4.3 #

  • fix: Deprecation warning on Android.
  • fix: Android build issue.
  • fix: Don't report Android exception when stop is called just after start.

4.4.2 #

  • fix: Android build issue with linter.

4.4.1 #

  • fix: Android build issue with linter.

4.4.0 #

  • feat: onStateChanged() stream is now filled by platform implementations.
    • This allows more reliable updated record states.
  • fix: onAmplitudeChanged could result in computation error.
  • core: Updated flutter to min 2.8.1.
  • core: Updated example to use above streams.

4.3.3 #

  • fix: WAV header overwrites first 44 data bytes.

4.3.2 #

  • fix: Android hasPermission() method does not throw exception anymore when permission has been denied.

4.3.1 #

  • fix: iOS compilation.

4.3.0 #

  • feat: Add input devices listing and selection (linux / windows / macOS / web).
  • feat: Add number of channels.
  • core: fmedia updated to 1.28 (linux / windows).
  • feat: Add recorder state stream.
  • feat: Add recorder amplitude stream.
  • core: Update dependencies.
  • fix: Add error details on record start (ios).
  • fix: WAV recording header, resume-pause (Android).

4.1.1 #

  • core: README.md updates.

4.1.0 #

  • feat: Add linux platform. EXPERIMENTAL.

4.0.2 #

  • core: Replace SFML by fmedia.
  • feat: More encoders and features on Windows.
  • fix: Windows build by removing SFML.
  • core: README.md updates.

4.0.1 #

  • core: OPUS and vorbis formats are now in OGG containers (instead of MP4).
  • core: Relax dependencies version constraints.
  • core: README.md updates.

4.0.0 #

This contains very small breaking changes. See below.

  • core: BREAK: AudioEncoder values are now in lowerCamelCase.

  • core: BREAK? or fix: start#samplingRate is now an integer.

  • core: BREAK: AudioEncoder.aac is now AudioEncoder.aacLc.

  • core: Android minimum API level is now 19.

  • core: dart minimum version is now 2.15.

  • core: Update dependencies.

  • core: README.md updates.

  • core: License changed from Apache 2.0 to BSD-3-Clause.

  • feat: Add Windows platform support.

  • feat: Add macOS platform support.

  • feat: Codec is now applied in web platform (if available).

  • feat: Add vorbisOgg, WAV, FLAC, PCM 8 bits, PCM 16 bits.

  • feat: Add isEncoderSupported to check if the encoder is available on the platform.

3.0.4 #

  • fix: iOS - hasPermission double check was needed when permission was undeterminated.

3.0.3 #

  • core: Moved from jcenter to mavenCentral (Android).
  • feat: Use average instead of peak power (iOS).

3.0.2 #

  • fix: web pubspec.yaml file.

3.0.1 #

  • fix: Android request code is now frozen.
  • core: Update dependencies.

3.0.0 #

  • feat: Add web support.
  • feat: Add getAmplitude() to get current and max dBFS.
  • core: static methods are no more! (but api is pretty much the same)
  • core: path param is now optional in start method to align behaviour with web platform.
    If null is given, a temp file is generated for you.
  • core: stop method now returns the output path.

2.1.1 #

  • fix: Android warning "mediarecorder went away with unhandled events".

2.1.0+1 #

  • Relaxing dart/flutter constraints for pub.dev analysis.

2.1.0 #

  • Add pause/resume/isPaused features.
  • Updated example to include pause.

2.0.0 #

  • Add null safety support (based on v1.0.3).
  • Updated example. Moved from 'audioplayers' to 'just_audio'.

1.0.3 #

  • Allow recording from bluetooth device on iOS.

1.0.2 #

  • Fix (for good) potential exception when closing beofre recorder is actually started (Android).

1.0.1 #

  • Fix potential exception when closing beofre recorder is actually started (Android).
  • Fix potential NPE on permission result (Android).
  • Updade dependencies.

1.0.0 #

  • Flutter 1.12.0 is now minimum version (Flutter plugin API v2).
  • Finalize Record API.
  • Request permission on Android too.
  • Automatically stop recording when leaving activity / app.
  • Add all codecs with cross platform compatibility.

0.2.1 #

  • Fix broken build on Android.

0.2.0 #

  • Fix broken build on Android.

0.1.0 #

  • Initial release.
  • Implementations for Android and iOs.
  • Example.
527
likes
140
pub points
99%
popularity

Publisher

verified publisheropenapi4j.org

Audio recorder from microphone to file or stream with multiple codecs, bit rate and sampling rate options.

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (LICENSE)

Dependencies

flutter, record_android, record_darwin, record_linux, record_platform_interface, record_web, record_windows, uuid

More

Packages that depend on record