MP3 player with waveform viewer


#1

Are there an mp3 player available that has an actual waveform generated from the MP3?

This is so users can jump to points in a track based on the shape of the waveform.

an example can be found here…

http://soundcloud.com/tracks/latest

Ideally I’d like a player that has…

  • selectable playlist
  • waveform
  • thumbnail of artwork

Any ideas?

Many thanks :slight_smile:


#2

I imagine the mp3 will need to played at runtime first to generate the complete spectrum waveform. So that would mean no, but maybe someone else has a briliant idea.


#3

or possibly compiled during upload?


#4

This is possible to do with AS3 and flash player 10, but it needs to have the whole file downloaded first.
I haven’t seen any in active den, but maybe there already ares some.
If no, I maybe could make one.


#5

http://activeden.net/item/categories-mp3-audio-module/75314 check out this mp3 player… pretty cool…


#6
This is possible to do with AS3 and flash player 10, but it needs to have the whole file downloaded first. I haven't seen any in active den, but maybe there already ares some. If no, I maybe could make one.

How much would said player cost to develop?


#7

Most solutions in flash use SoundMixer.computeSpectrum for the waveform (or read 'visualization), I’ve created mp3 players using that. But those visualizations are created at-runtime so I think first thing you’ll need to find out if it’s even possible to have a ‘image’/‘visualization’ of the complete track available on start. I think that the only way is that these are loaded seperately and not created from the actual mp3 while/before played. That doesn’t mean they can’t be precreated at some point (maybe indeed from upload?), but that’s a whole different matter.
Anyone thinks I’m wrong, in that case I’m curious to see how it could be done.


#8

With flash 10 it is possible. We can access bytearray datas from an mp3 with the extract method and use it to create the waveform.
I don’t know how many time I’d need since I have a lot of work.
Mrjamie ? Do you need this very quickly or not ?


#9

yes, same as I do/did
public var ba:ByteArray = new ByteArray();
SoundMixer.computeSpectrum(ba, false);

but can you extrapolate all ba[] data ‘beforehand’ and generate a graph not-at runtime? sounds promising if that’s possible. good luck if you jump on that and would welcome a shout if you have an example of final result… curious to see it working since I’ve had this particular request before and didn’t see any on-the-fly solution.


#10

Here is nice example of Sound.extract() (just source code)


#11

Thnaks for the link gole, I was going to post the same =)


#12

Sounds like it’s something that’s fairly feasible then.

I’d love to see one constructed, would be happy to commission such a project if someone is confident of creating a slick version.

J


#14

Diktat,

Amazing work! Everyone else - this player is awesome, an actual true represented waveform player, generated on the fly from your XML playlist… oh yeah!

Thank you Dikat, this work is perfect!

Everyone else… you can find the player here