Click here to register.

Audio and Prompts Discussions

Flash Recorder
User: bailoo
Date: 9/23/2007 1:03 am
Views: 12279
Rating: 38

Hi Webmaster,

Voxforge rocks!!! 

We have put up a flash based recorder on our website. To see it, please go to

and enter guest/guest as login/password

 You can then record files in the flash recorder. 

 As has been previously discussed on these forums, the voxforge project needs something like that. 

I offer to provide you with the source code and integrate it into the voxforge site. Please contact me at abhishek[dot]singh[at]simmortel[dot]com



--- (Edited on 9/23/2007 1:03 am [GMT-0500] by bailoo) ---

Re: Flash Recorder
User: kmaclean
Date: 9/23/2007 10:26 pm
Views: 481
Rating: 74

Hi bailoo,

>Voxforge rocks!!!

Glad you like the site!

>I offer to provide you with the source code and integrate it into the voxforge site.

This is great!

I tried the link, and was able to login, but the app shows as "Not Connected" ... not sure what I am doing wrong.  I've changed my Flash security settings to allow access to your Flash application, and I can see my microphone levels moving as I speak, but the Record and Play buttons are grayed out. 

Just so I understand how this works does your app need a Flash server (e.g. Red5)?  Is the audio updated using streaming audio?  Do you need lots of bandwidth to get this to work?



--- (Edited on 9/23/2007 11:26 pm [GMT-0400] by kmaclean) ---

Re: Flash Recorder
User: kmaclean
Date: 10/1/2007 1:05 pm
Views: 445
Rating: 32

I've done a bit of research to try to understand which audio codecs are supported in Flash Recorder:

Audio streaming (i.e. Server -> Flash client):

Flash Player 9 Update 3 now includes support for HE-AAC audio codecs.  From the Wikipedia entry:
Scientific testing by the European Broadcasting Union has indicated that HE-AAC at 48 kb/s was ranked as "Excellent" quality using the MUSHRA scale.  MP3 in the same testing received a score less than half that of HE-AAC and was ranked "Poor" using the MUSHRA scale.
Patent licenses are required for end-product companies making hardware or software products which include HE AAC encoders and/or decoders.  Unlike the MP3 format, content owners are not required to pay license fees to distribute content in HE AAC.
This article (Video and Audio Streaming with Flash and Open Source Tools) provides some information with respect to other audio formats supported by Flash:
Flash has always been developed and used for multimedia purposes, but until version 6 the possibilities for audio streaming were limited and also there was no video support. With Version 6 and 7 Macromedia introduced video support and a new file format to support various ways of streaming.
Streaming is build upon a new file format called FLV, which separates the streamable content and the flash movie [...] A single FLV stream contains at most one audio stream and at most one video stream. Flash supports uncompressed sound and various compressed formats like MP3 and ADPCM as well as the proprietary Nellymoser audio codec.

Recording audio from a Flash client (i.e. Flash client -> server)

It seems like a Flash client does *not* use FLV to stream audio back to a server.  It seems like the Flash client uses the proprietary Nellymoser Asao codec.  From the Wikipedia article:
Adobe Flash Player clients, when recording audio from a user's microphone, use the Nellymoser Asao codec and do not allow Flash programmers to select any other codec.
This post in one of the Drupal forums provides some information – Leo basically says:
  • Flash:

  • Java Applet:

    • The best solution, as discussed earlier, is to create the recorder as a Java applet. The applet would record the audio into a .Wav file, convert it to mp3 using a local library based on LAME ( or something similar, let the user replay what's been recorded, and then upload the resulting file to the server via XML-RPC.

    • Vimas Technologies developed a product that does pretty much all of the above, with the exception of the XML-RPC part ( Unfortunately, their audio recorder is closed, costs $300, and could have a better API.

The nelly2pcm project might be a way around this.  I'm still not clear on whether you need a license from Nellymoser to capture speech audio in a Flash client, stream it to an RTMP server (Flash Media Server, Red5, Wowza) and then convert it to wav.



--- (Edited on 10/1/2007 2:05 pm [GMT-0400] by kmaclean) ---

Re: Flash Recorder
User: kmaclean
Date: 10/3/2007 7:58 pm
Views: 982
Rating: 33

Another option is to use a Flash client to record audio, but then to save to the user's local hard drive, for later upload by a script.  The Disseminator's Audio Recorder (GPL licensed) uses this approach ... from their site:

[...] this learning tool allows students and teachers to record an MP3 audio file directly from a web browser and save it to a local folder. [...]

The Audio Recorder will only work in Internet Explorer and its derivatives such as the Avant browser because this application uses an ActiveX control to create the MP3 audio file. You will also need the latest Adobe Flash Player.



--- (Edited on 10/3/2007 8:58 pm [GMT-0400] by kmaclean) ---

Re: Flash Recorder
User: ariestav
Date: 10/6/2009 9:18 pm
Views: 233
Rating: 9

I realize I am adding late in the game to this thread, but you can now convert .flv streams to any format that ffmpeg supports.  I am currently developing a Flash-based command-control solution and have figured out how to record audio to the server, convert it to uncompressed wav, and have julius analyze it.  Was a tough process, but damn is it sweet.

--- (Edited on 10/6/2009 9:18 pm [GMT-0500] by ariestav) ---

Re: Flash Recorder
User: kmaclean
Date: 10/15/2009 2:16 pm
Views: 1439
Rating: 9

Hi ariestav,

>Flash-based command-control solution and have figured out how to

>record audio to the server, convert it to uncompressed wav, and have

>julius analyze it.

Sorry for the delay in getting back to you...

Very cool! 

Good to know that this can be done.  If you decide to publish the code, please let us know!



--- (Edited on 10/15/2009 3:16 pm [GMT-0400] by kmaclean) ---