DSWaveformImage

Generate waveform images from audio files on iOS, macOS & visionOS in Swift. Native SwiftUI & UIKit views.

MIT License

Stars
1K
Committers
11

Bot releases are hidden (Show)

DSWaveformImage - 14.2.2 - striped rendering fix Latest Release

Published by dmrschmidt 9 months ago

Fixes an issue w/ striped rendering always drawing the last stripe as a line instead of a proper bar.

DSWaveformImage - fix an issue with macOS API

Published by dmrschmidt 12 months ago

see #85

DSWaveformImage - 14.2.0

Published by dmrschmidt 12 months ago

Re-add ability to position waveform when using the image APIs.

DSWaveformImage - 14.1.2

Published by dmrschmidt 12 months ago

Bring back support for visionOS from 14.1.0.

DSWaveformImage - 14.1.1

Published by dmrschmidt 12 months ago

  • remove vision OS support for now again as it was causing troubles with Xcode 14
DSWaveformImage - 14.1.0

Published by dmrschmidt 12 months ago

  • add the possibility to handle "loading" state in WaveformView - courtesy of @alfogrillo in #82
  • add support for visionOS - courtesy of @tapsandswipes in #81
DSWaveformImage - 14.0.0

Published by dmrschmidt about 1 year ago

  • Minimum iOS Deployment target is 15.0, macOS is 12.0 to remove internal usage of deprecated APIs
  • WaveformAnalyzer and WaveformImageDrawer now return Result<[Float] | DSImage, Error> when used with completionHandler for better error handling
  • WaveformAnalyzer is now stateless and requires the URL in .samples(fromAudioAt:count:qos:) instead of its constructor
  • SwiftUI's WaveformView has a new constructor that provides optional access to the underlying WaveformShape, which is now used for rendering, see #78
DSWaveformImage - 13.0.2

Published by dmrschmidt over 1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/dmrschmidt/DSWaveformImage/compare/13.0.1...13.0.2

DSWaveformImage - 13.0.1

Published by dmrschmidt over 1 year ago

  • bug fix for #71
DSWaveformImage - 13.0.0

Published by dmrschmidt over 1 year ago

Any mentions of dampening & similar were corrected to damping etc in 11460b8b.

Most notably in Waveform.Configuration.

See https://github.com/dmrschmidt/DSWaveformImage/issues/64.

DSWaveformImage - 12.0.1

Published by dmrschmidt over 1 year ago

Includes a fix for #58.

DSWaveformImage - 12.0.0

Published by dmrschmidt almost 2 years ago

  • The rendering pipeline was split out from the analysis. You can now create your own renderes by subclassing WaveformRenderer.
  • A new CircularWaveformRenderer has been added.
  • position was removed from Waveform.Configuration, see 0447737.
  • new Waveform.Style option have been added, see below

Waveforms can be rendered in 2 different ways and 5 different styles each.

By default LinearWaveformRenderer is used, which draws a linear 2D amplitude envelope.

CircularWaveformRenderer is available as an alternative, which can be passed in to the WaveformView or WaveformLiveView respectively. It draws a circular
2D amplitude envelope.

You can implement your own renderer by implementing WaveformRenderer.

The following styles can be applied to either renderer:

  • filled: Use solid color for the waveform.
  • outlined: Draws the envelope as an outline with the provided thickness.
  • gradient: Use gradient based on color for the waveform.
  • gradientOutlined: Use gradient based on color for the waveform. Draws the envelope as an outline with the provided thickness.
  • striped: Use striped filling based on color for the waveform.
DSWaveformImage - 11.0.1

Published by dmrschmidt almost 2 years ago

DSWaveformImage - 11.0.0

Published by dmrschmidt about 2 years ago

Adds support for native macOS

Uses NSImage on macOS now, so the lib (and SwiftUI views) can be used from within plain macOS apps.

To support this better, the library is split up into 2 parts now:

import DSWaveformImage // for core classes to generate `UIImage` / `NSImage` directly
import DSWaveformImageViews // if you want to use the native UIKit / SwiftUI views

Big shoutout to @jverkoey for his PR to add native macOS support!

Full Changelog: https://github.com/dmrschmidt/DSWaveformImage/compare/10.1.0...11.0.0

DSWaveformImage - 10.1.0

Published by dmrschmidt about 2 years ago

Adds native SwiftUI views for both static rendering and live rendering.

See WaveformView and WaveformLiveCanvas.

Full Changelog: https://github.com/dmrschmidt/DSWaveformImage/compare/10.0.1...10.1.0

DSWaveformImage - 10.0.0

Published by dmrschmidt over 2 years ago

10.0.0 changed the initial draw direction in the live view to always be right to left, even when there are still less samples than are needed to fill the entire view.

While this kind of is a minor change, it is still changing existing behavior, which may break somebody's expectations.

Package Rankings
Top 16.91% on Carthage
Top 3.6% on Cocoapods.org
Top 9.57% on Swiftpackageindex.com
Badges
Extracted from project README
Swift Package Manager compatible
Related Projects