Ahah oui je suis en décalage donc mes updates sont font au moment ou la commu est couchée!
Comment ça se fait que tu dors pas ? T’es sur quel fuseau ?
Je savais pas que tu parlais français d’ailleurs!
Ahah je vois ! 
Merci pour tes commentaires sous chaque (ou presque chaque) updates, ça me motive vraiment à améliorer mes plugins !
Wonderful, does it play base64 audio?
Hi @EliezerBeniz
Not at the moment.
Is this something crucial for you ?
If yes, I could implement it with the next update.
New update 04/08/2022 :
BIG performance improvement !
You are now able to preload peaks for an audio file 
This means Waveform loading can now be lightning-speed 
This is how it comes, and how to make it work.
- Up to you to use it or not. You may define this with the “Preload Peaks ?” field. Note that if this field is set to “no”, peaks will never be loaded event if fields are filled with some peaks data.
- There are 2 cases :
-
The Waveform for this audio file has never been generated.
This means it has to be generated at least once, so that it can be reloaded for further initializations.
As soon as the Waveform has been drawn, an event gets fired : “Peaks Loaded”. You may listen to this event, and create a workflow to save peaks on your database.
The peaks data you have to save is available in a new custom state called “Peaks Data (JSON Format)”. Just save it in a text field, as the plugin outputs it. Same format. -
The Waveform for this audio has already been generated and is stored in your database.
In this case, you may just load the peaks by filling the field called “Peaks Data (JSON format)” with the value you saved in your database on step 1.
I hope this will help you using this plugin for heavy audio files such as podcasts or movie soundtracks and get rid of this loading time that could take more than a few dozen of seconds before this update.
Please tell me anything is going wrong on your side, or if you see any improvement that could be done
!
Thank you,
Wes
Update 04/08/2022 :
- You may now load resources that are stored outside Bubbles database.
You have to define if the audio file you are trying to load comes from Bubble database or not with the field “Enable CORS Access ?”, which stands for “Cross-origin Resource Sharing”.
If your audio file is stored inside Bubbles database, you should NOT enable this option.
If it is stored outside, you should tick it.
Update 05/08/2022 :
- Small for about “Load new file” action, that was broken due to the new integration of “Peaks Data”.
It now works properly again.
Thankyou love the native controls
Happy to hear @chad !
Glad you like it 
New update 08/08/2022 :
An event is now fired as soon as an Audio File has been played more than X seconds.
Those X seconds are editable in the Waveform Configuration.
Why ?
This will help you to build a listening counter.
How does it work ?
- Define a number of seconds after which an Audio File should be considered as “Played” (30 seconds for example).
- When an Audio File is played more than those X seconds (30 in our example), the custom event “Current Audio File can be considered as Played” will be fired.
- Add an action after this event. You can for example increment the “Played count” for the current Audio File.
Hope this will help you !
Best,
Wes
It would definitely help a lot!
I have an app with whatsapp chat that I didn’t find any plugin that would help me to replicate and play the audios like whatsapp.
Can you bring us this update?
Hey @EliezerBeniz,
All right, I will bring this update during the next days.
Best,
Wes
Playlists are now supported 
It is a big update in the plugin, I will try to explain changes as good as possible in this post. It will maybe be long, but there are a lot of new actions and things you have to be aware of.
How do playlists works ?
Now by default, every Waveform Audio Player is a playlist even if it has only 1 song. The reason I did this is because if you load an another audio file manually after the initial one, you’ll still be able to perform the “Play Previous Track” action and the initial file will be kept in memory.
To add a new Song into a Playlist, you have to use the action called “Add a new Song to the Playlist”. It will be queued at the end of the playlist, and will be played as soon as all the other songs are finished playing.
The available fields are the following : (* is mandatory)
- Song File (URL) *
- Peaks Data (in order to preload peaks for instant wave rendering)
- Markers Data (to add some previously created markers to the waveform)
- Song Name
- Song Artist
- Song Album
- Song Artwork (Image)
To remove a song form the playlist, you may remove it by its name (that you define at the moment you add the song in the playlist.).
In order to remove it, you have to use the action called “Remove a Song from the Playlist by its Name” by specifying its name.
The available fields are the following : (* is mandatory)
- Song Name *
To clear all songs from the playlist - to only keep the song that is currently playing - you have to use the action called “Clear Playlist Queue”.
No fields are necessary.
To play the next track, you will have to trigger the action called “Play Next Track”.
If there is no next track, nothing will happen.
No fields are asked for this action.
To play the previous track, you will have to trigger the action called “Play Previous Track”.
If there is no previous track, nothing will happen.
No fields are asked for this action.
This update also comes with 2 new Custom States that will help you build relevant visuals related to your Audio Waveform.
Number of Songs to be played Next
It will return the number of songs that will play next.
Title of Songs to be played Next
It will return the title of the songs to be played next (as a list).
The biggest issue I’m facing
Unfortunately, I were not able to make this work with the Media Session API (it works sometimes, but it is quite sketchy). We can definitely not define the both features as fully compatible each others.
For the most curious, the issue I faced was the following :
When clicking “Next Track Button” on a locked mobile device screen, the plugin has to fetch the audio file of the next track to be played. But it looks like the browser were not able to perform requests while device is locked.
If someone here has a background in development, let me know ! ![]()
I’ll try to solve it, but I can’t promise anything.
But I assume that other Bubble plugins can do it, so there is no reason I couldn’t !
Conclusion
Anyways, I think this is a BIG update for this plugin. In the next days, I’ll implement a fancy demo on the official preview page (I’ll post it here once finished) so that you can see - and even better - interact with this new feature.
Please keep in mind this is still beta-testing, and up to you to stay on the oldest updates that may be more stable !
Thank you very much, and please feel free to get in touch if you need any help regarding this plugin!
![]()
Wesley
Hi @wesleywsls , this plugin looks awesome! I have a feature suggestion that would most likely lead me to purchasing: Can you make a workflow to skip to a certain time in the audio? I think the marker features are really cool, and would be a lot more useful if you could skip to your marker spots without just clicking on the waveform… for example if an there were comments, someone could write “you have to check out 1:45 of this song…” and then clicking on the comment with 1:45 would start a workflow to skip to 1 minute and 45 seconds. hope this is helpful, thanks for the work you put in!
Hey @vincent.l.arena,
Thanks for your request !
I’ll definitely add it, I write it down on my feature list!
I’ll keep you updated when it’s live.
Thanks,
Wes
Hi all!
Just came back from holidays, so I’m up again to push some updates and make this plugin better day after day !
New update :
An issue has been found while using the Waveform Audio Player in a popup. It is now fixed.
Hi @wesleywsls any news for the recording feature? Waiting to buy this amazing plugin, will use it for a chat app
Hi @wesleywsls I just purchased and started using this plugin, it’s a great plugin by the way.
I’m facing a few issues tho.
-
The waveform is loading way slower than the other elements on the page, how can I make the wave load faster or at least, show a loading animation while the waveform is loading?
-
There is an issue with the markers being saved. I’m able to save all the marker data in JSON into my database, but somehow the last marker isn’t being saved.
For eg, if I create 3 markers, the first 2 are being saved, but the 3rd one wasn’t. Can you please help?
Thank you.
Hi Weswas,
I am looking for a player that would be able to play 2 tracks at the same time and where the user would be able to control the volume of each player - would you’re plugin work for that?
All the best,
Peter
This doesn’t work on mobile browsers or?