Skip to content

Releases: katspaugh/wavesurfer.js

7.0.7

29 Jul 09:43
ca94ea4
Compare
Choose a tag to compare
  • 7.0.7
  • Fix: set initial playbackRate on canplay (#3062)
  • Fix: resume AudioContext if suspended (#3060)

7.0.6

24 Jul 07:33
66ad649
Compare
Choose a tag to compare
  • 7.0.6
  • Fix: [Hover] fix converting seconds method in formatTime (#3046)
  • Update README.md
  • Fix: [Hover] hovering over regions (#3043)
  • Fix: events in load should always be async (#3042)

7.0.5

22 Jul 08:50
83cd02e
Compare
Choose a tag to compare
  • Fix: [Envelope] ignore audio volume changes (revert #3003) (#3040)

7.0.4

22 Jul 08:06
6255488
Compare
Choose a tag to compare
  • 7.0.4
  • Feat: [Spectrogram] option to split channels (#3039)
  • Fix: [Envelope] handle 0 volume (#3033)
  • Fix: restore mediaControls (#3028)
  • Docs: update question.md
  • Feat: add exportPeaks method (#3009)

7.0.3

11 Jul 15:41
4a418a8
Compare
Choose a tag to compare
  • Docs: generate docs (#3006)

7.0.2

11 Jul 15:14
ca6ccbb
Compare
Choose a tag to compare
  • Fix: export .min.js as main from package.json (#3008)
  • Chore: upgrade dev dependencies (#3005)

7.0.1

11 Jul 08:13
0c466b6
Compare
Choose a tag to compare
  • Fix: [Envelope] react to media element volume changes (#3003)
  • Feat: [Regions] add region-in and region-out events (#3000)
  • Fix: [Regions] resizing when start is 0 (#2999)

7.0.0

10 Jul 08:18
fa2bcfe
Compare
Choose a tag to compare

New TypeScript version

wavesurfer.js v7 is a TypeScript rewrite of wavesurfer.js that brings several improvements:

  • Typed API for better development experience
  • Enhanced decoding and rendering performance
  • New and improved plugins

Upgrading from v6

Most options, events, and methods are similar to those in previous versions.

Notable differences

  • The backend option is removed – HTML5 audio (or video) is the only playback mechanism. However, you can still connect wavesurfer to Web Audio via MediaElementSourceNode. See this example.
  • The Markers plugin is removed – you should use the Regions plugin with just a startTime.
  • No Microphone plugin – superseded by the new Record plugin with more features.
  • The Cursor plugin is replaced by the Hover plugin.

Removed options

  • backend, audioContext, closeAudioContext, audioScriptProcessor – there's no Web Audio backend, so no AudioContext
  • autoCenterImmediatelyautoCenter is now always immediate unless the audio is playing
  • backgroundColor, hideCursor – this can be easily set via CSS
  • mediaType, mediaControls – you should instead pass an entire media element in the media option. Example.
  • partialRender – done by default
  • pixelRatiowindow.devicePixelRatio is used by default
  • renderer – there's just one renderer for now, so no need for this option
  • responsive – responsiveness is enabled by default
  • scrollParent – the container will scroll if minPxPerSec is set to a higher value
  • skipLength – there's no skipForward and skipBackward methods anymore
  • splitChannelsOptions – you should now use splitChannels to pass the channel options. Pass height: 0 to hide a channel. See this example.
  • drawingContextAttributes, maxCanvasWidth, forceDecode – removed to reduce code complexity
  • xhr - please use fetchParams instead
  • barMinHeight - the minimum bar height is now 1 pixel by default

Removed methods

  • getFilters, setFilter – as there's no Web Audio "backend"
  • drawBuffer – to redraw the waveform, use setOptions instead and pass new rendering options
  • cancelAjax – you can pass an AbortSignal in fetchParams
  • loadBlob – use URL.createObjectURL() to convert a blob to a URL and call load(url) instead
  • skipForward, skipBackward, setPlayEnd – can be implemented using setTime(time)
  • exportPCM is replaced with getDecodedData that returns a decoded audio buffer
  • toggleMute is now called setMuted(true | false)
  • setHeight, setWaveColor, setCursorColor, etc. – use setOptions with the corresponding params instead. E.g., wavesurfer.setOptions({ height: 300, waveColor: '#abc' })

See the complete documentation of the new API.

7.0.0-beta.16

09 Jul 09:56
0467efe
Compare
Choose a tag to compare
  • Chore: replace webpack with rollup (#2992)
  • Prevent default touch actions without an EventListener (#2991)
  • Fix: timeline notches positioning (#2990)

7.0.0-beta.15

07 Jul 09:23
e6f8b02
Compare
Choose a tag to compare
  • Beta 15
  • timeline plugin: restores formatTimeCallback (#2986)
  • Fix: ignore right button clicks when dragging (#2984)
  • Fix: dragging zero-lengths regions (i.e. markers) (#2983)
  • Fix: fall back to rect if roundRect is not supported (old FF) (#2982)
  • Chore: replace review action