FlashAmp FAQ

All Editions...

Which edition of FlashAmp should I use?
Can I upgrade from one edition of FlashAmp to another?
Which versions of Flash are supported by FlashAmp?
What about FlashAmp and the new sound functions in Flash 9/10?
Can I get a student discount when I buy FlashAmp?
   
What are cue-points and how do I use them in Flash?
How do I get cue-points into my sound files?
What's the best sound format to use with FlashAmp?
Does sound have to be internal in my Flash movie to use FlashAmp?
Should I use the #include format or the loadVariables() format?
If I'm using loadVariables() to load the FlashAmp data how do I get it into a Flash array?
   
Why is my animation not in sync with the sound?
How do I use FlashAmp to lip-sync characters in Flash?
Why do large MP3 files take so long to process?
   
What does the Smoothing checkbox do?
When should I use the dB Scale checkbox?
What Scale value should I use?
When should I use the Stereo checkbox?
When should I use the Normalize checkbox?
   
Can I export a Flash file that uses FlashAmp data as a QuickTime movie?
   
Why do I get an error alert "Amplitude Xtra Error: Unsupported cast member type"?
Why do I get an error alert ""Create File Error!"?
 
Does FlashAmp support 'live' sound input?
Can FlashAmp be run from a web server?
Does FlashAmp support command-line arguments?

 

FlashAmp Pro...

How come there's no data in the upper frequency bands?
How many frequency bands should I use?
When should I use the Logarithmic Bands checkbox?
   

 


All Editions...

Which edition of FlashAmp should I use?

If you just want to be able to synchronize sound and animation in Flash, or lip-sync characters, and you don't have large numbers of sound files to process then you can use FlashAmp Lite which generates amplitude data for single sound files.

If you have lots of sound files, or you do a lot of sound synchronization work in Flash, then you should consider FlashAmp Standard which adds batch processing and optional normalizing of sound files.

If you want to be able to create animations or music visualizations based on the frequency content of sound (also known as sound 'spectrum' data) then you should use FlashAmp Pro. Of course you can also generate amplitude data that you can use for basic sound and lip sync as well as batch processing of sound files.

See the FlashAmp Editions Compared page for an overview of the differences between each edition.


Can I upgrade from one edition of FlashAmp to another?

Yes. You can upgrade from either FlashAmp Lite or Standard. If you are upgrading to another edition of the same version then the upgrade cost will be the difference between the original cost of your current license and the current cost of the edition that you want to upgrade to. If you are upgrading to a newer version then there may be an additional charge. Please contact us for details.


Which versions of Flash are supported by FlashAmp?

FlashAmp data can be used in Flash 10, Flash 9, Flash 8, MX2004, MX2004 and MX. It can even be used in Flash 5 and Flash 4 with a bit of conversion on the data arrays.

Because FlashAmp just produces raw data in a non-proprietry format, it generally stays compatible with new versions of Flash.

What about FlashAmp and the new sound functions in Flash 9/10?

Se our Flash 9 page to find out what Flash 9 and 10 mean for FlashAmp


Can I get a student discount when I buy FlashAmp?

Yes, we offer a 50% discount for all qualifying Academic customers. Please contact us for details.


What are cue-points and how do I use them in Flash?

Cue-points are used to identify specific points in time within a sound file. A sound file can have a number of cue-points each with a name and a time position.

Cue-points can be used to trigger specific actions within Flash. For example, you may have 3 animated characters onscreen at the same time in Flash with their voices all sharing the same sound file. You need to know when each character begins talking so you can target lip-sync for the current character. If you add cue-points to the file labeled with the name of each character at the times when each character begins talking then you can detect these points in Flash with the information generated by FlashAmp.

All editions of FlashAmp can generate an array of cue point names within a sound file based on the frame rate you set in FlashAmp - this value must match the frame rate of your Flash movie. As the movie plays you simply check the values in this array to find the current cue-point value. See the information in the FlashAmp User Guide for the details on how to use cue-points in Flash.


How do I get cue-points into my sound files?

Cue-points (also called 'markers' by some sound editing applications) can be added to WAVE (.wav) and AIFF (.aif) sound files. Most professional sound editing applications on either Windows or Macintosh platforms support cue-points.


What's the best sound format to use with FlashAmp?

All of the following sound formats can be used with FlashAmp:

  • AIFF (uncompressed)
  • WAVE (uncompressed)
  • SWA (Shockwave Audio)
  • MP3 (MPEG3)

Uncompressed formats (AIFF and WAVE) files will be processed more quickly by FlashAmp than SWA and MP3. This is especially true for large sound files.

FlashAmp supports most common sample rates including 48000Hz, 44100Hz, 22050Hz, 11025Hz in 8 or 16 bit formats.

FlashAmp 3 also supports MP3 files that use Variable Bit Rate (VBR) or Joint Stereo encoding.

More important that the sound format is the quality of the recording itself. You will get the best results using sounds with a large dynamic range (the range of loud to soft within the sound - 16bit sounds are best) and without clipping (distortion caused by digital overload during recording).

If you are using FlashAmp Pro to generate spectrum (frequency) data then we recommend that you use a minimum sample rate of 22050Hz. Remember that you can always process the sound using a high sample rate to generate the data and then use a copy of the sound that uses a lower sample rate within Flash if you need to save space or to facilitate streaming.


Does sound have to be internal in my Flash movie to use FlashAmp?

No, you can use either internal or external sounds. FlashAmp data can be used with any of the sound playback functions in Flash - sound on the timeline (either on the root timeline or in a movieClip), loadSound() and attachSound().

The main difference between internal and external sounds is in the way that you derive the current position of the sound as it plays in order to calculate the current index into the FlashAmp array(s). For internal sounds (placed on the Flash timeline) you check the _currentframe property and subtract any offset between frame 1 and the start of the sound. The result will be the current index into the FlashAmp array which will give you the correct amplitude/spectrum/cue-point value. Here's one line of ActionScript that does just that:

ampValue = amplitude[_root._currentframe - gStartFrame];

See this lip-sync example for Flash code that uses this method with attachSound():

   
Source Code
Basic single-character lip-sync animation using amplitude values (using sound on the root timeline). Source code includes full documentation.

For external sounds (played with loadSound() or attachSound() ) you need to calculate the current frame within the sound using the position property of your Flash sound object. The following line of code calculates the current frame of the sound:

gFrame = Math.floor((theSound.position/1000)*fps);

Where theSound is your Flash sound object and fps is the frame rate of your Flash movie. Then gFrame is the index into the FlashAmp array:

ampValue = amplitude[gFrame];

See this spectrum example for Flash code that uses this method:

   
Source Code
16-band stereo eq-type display created with spectrum values (using attachSound() ). Source code includes full documentation.

Each of these methods (having the sound on the timeline, attachSound() and loadSound() ) have advantages and disadvantages. See the FlashAmp User Guide for more information.


Should I use the #include format or the loadVariables() format?

The FlashAmp output format you choose really depends on the way you are using sound in Flash. As a general rule the #include format is by far the easiest to use. You just add an #include statement to your Flash file and put the #include file created by FlashAmp in the correct place and the code in the file will be available for use in your Flash movie. If your sound changes and you need to re-process it or you want to try a different option in FlashAmp (like switching Smoothing on for example) then you just replace the #include file and re-publish your Flash movie. It's that simple.

If the sounds that you are using are likely to change after you publish your Flash movie (say if you have built an MP3 player and you want to add more MP3 files) then using loadSound() may be a better option. You can add an updated or new sound along with it's corresponding text file generated by FlashAmp and your .swf file will use the new sound and FlashAmp data without the need for re-publishing your .swf. The only downside of this approach is that loadSound() can be a bit slow when dealing with large arrays (like sound spectrum data for long sound files), although this is less of an issue with Flash MX2004. See the following question for example Flash code.


If I'm using loadVariables() to load the FlashAmp data how do I get it into a Flash array?

When you load data into Flash using loadVariables() then all the information will be formatted as strings. To use the FlashAmp arrays effectively you need to convert these strings into Flash number arrays. The usual way of doing this is to use the Flash string function string.split().

See the following code for a complete working example:

   
Source Code

Stereo VU meters example using the FlashAmp loadVariables() file format and loadSound(). In this example the FlashAmp data and the mp3 file are external to the Flash file.


Why is my animation not in sync with the sound?

There are two common reasons for bad sync - either the sound is not set to stream in Flash or the frame rate used to process the sound in FlashAmp is less than the frame rate used in the Flash movie.

If you are sure that both of these things are correct and you're still having sync problems then please contact us.


How do I use FlashAmp to lip-sync characters in Flash?

The recommended technique is to create 10 vector mouth shapes ranging from closed to fully open (as far as talking is concerned) and place them in a separate movieClip with one shape in each frame starting with the mouth closed. Process the sound with FlashAmp to generate amplitude data with a scale of 9 (so the FlashAmp data will range from 0 to 9), with smoothing off. As the sound plays send the playback head in the mouth movieClip to the frame equal to the current amplitude value +1. The mouth will move in sync with the sound.

Note you can have more than 10 mouth shapes (avoid having less if possible). The scale used in FlashAmp should be the number of mouth shapes used -1.

The main factor in achieving realistic lip-sync with FlashAmp is to have variation in the mouth shapes beyond just making the mouth open progressively. The exact nature of the variation depends on the character so some experimentation may be required.

See the following working example (with Flash source code):

   
Source Code
Basic single-character lip-sync animation using amplitude values. Source code includes full documentation.

 

Why do large MP3 files take so long to process?

This is due to the fact that FlashAmp must fully decompress mp3 files in RAM in order to access the sample data in the file. The best workaround is to save the mp3 file in an uncompressed format (WAVE or AIFF) and process that file. The generated data will still be valid for use when you play the mp3 file.

When processing files for spectrum data be sure that you don't change the sample rate when you save the uncompressed file. The correct sample rate is important for FlashAmp Pro when it calculates the frequency band widths. This is generally good practice when working with amplitude data as well.


What does Smoothing do?

Turning smoothing on (setting it to a value greater than 0 in FlashAmp 3) will result in the amplitude output file having more gradual variations than it would with smoothing turned off. This can be useful for animations that need to change state smoothly but shouldn't be used where you are relying on a completely accurate representation of the sound, such as a waveform or lip-sync animation.

In FlashAmp 3, the degree of smoothing increases with the button number.

The Smoothing checkbox (buttons in FlashAmp 3) applies to amplitude data only, it has no effect on spectrum data.

See the FlashAmp User Guide for more information.


When should I use the dB Scale checkbox?

The dB scale option can be used in situations where you need the amplitude values to be more representative of human hearing than raw amplitude values, such as animating VU (Volume Unit) meters.

'dB' refers to 'decibel' which, in relation to sound, is a logarithmic scale where variations at the 'quieter' end of the volume range have more significance than the at 'louder' end.

The 'Return dB Scale' checkbox applies to amplitude data only, it has no effect on spectrum data (which uses a type of dB scale by default).

FlashAmp returns dB values for amplitude data as positive values (strictly speaking they should be negative but positive values are easier to code animations with) which range from 0 (the loudest sound encountered in the file processed) to infinity (where everything above 50 can be regarded as too quiet to hear) so your existing FlashAmp ActionScript code may need to be modified to use dB values.

See the FlashAmp User Guide for more information.


What Scale value should I use?

The scale value that you use should be based entirely upon the way you're using the values in Flash, regardless of whether you're using amplitude or spectrum values. The default is 100 which is the most useful if you want to control things like alpha channel data or anything else in Flash that ranges from 0..100.

See the FlashAmp User Guide for more information.


When should I use the Stereo checkbox?

You should use the Stereo checkbox whenever you have an animation that relies on the left and right channels of a stereo sound. Such as a pair of VU meters (one for left and one for right) or something similar.

If the Stereo checkbox is unchecked (or the Mono button is on in FlashAmp 3) then FlashAmp will produce mono data whether the input sound is mono or stereo.

See the FlashAmp User Guide for more information.


When should I use the Normalize checkbox?

Normalizing boosts the loudest part of the sound to the loudest possible level without clipping (digital distortion). This is a useful option for preparing lip-sync data to ensure you get the maximum possible range of amplitude values if you are processing a sound that is relatively quiet.

Note that the normalizing process will also boost the quietest part of the sound which can result in increased noise.

See the FlashAmp User Guide for more information.

Can I export a Flash file that uses FlashAmp data as a QuickTime movie?

Yes. You can export Flash files that use FlashAmp data to QuickTime using Flash 8, MX2004 or MX. Here's how...

  • you must have QuickTime 6 or later
  • in the Flash tab of the Publish settings window select Flash Player 5 from the Version dropdown
  • in the Formats tab of the Publish settings window select QuickTime (.mov) and deselect everything else.
  • publish

NOTE: if you are using QuickTime 7.1.3 or later then you need to launch the QuickTime Player and make sure that the 'Enable Flash' checkbox in the Advanced tab of the QuickTime Preferences window is switched on. This is switched off by default. After switching it on, you should then restart your computer to ensure that this setting is enabled. Re-starting QuickTime or the Finder may also work but restarting is recommended. If this is not done then you are likley to get an error regarding a 'missing QuickTime component' when you export QuickTime from Flash MX2004 or Flash 8.


Why do I get an error alert "Amplitude Xtra Error: Unsupported cast member type"?

This error is caused by attempting to process a file type that is not supported by FlashAmp. Even if the file extension for the sound is '.mp3', '.wav', '.aif' or '.swa' it's still possible that it has been encoded in an unsupported format. The best solution is to open the file in a sound editing application and save it out in a format supported by FlashAmp.

See also What's the best sound format to use with FlashAmp?


Why do I get an error alert ""Create File Error!"?

This error is caused when FlashAmp is unable to write an output file. Make sure the output destination is not Read-Only (such as a CD), and that you have the appropriate permissions to write to the output location.


Does FlashAmp support 'live' sound input?

The current version of FlashAmp does not support 'live' or direct sound input either from a microphone or line/soundcard input. We suggest that you investigate the microphone ActionScript object (in Flash MX or later) that allows you to get the current microphone input level in realtime.

We are looking at ways of incorporating this functionality into a future version of FlashAmp.


Can FlashAmp be run from a web server?

At this time FlashAmp does not support web server operating systems however we are looking at ways of incorporating this functionality into a future version of FlashAmp.


Does FlashAmp support command-line arguments?

The current version of FlashAmp does not support command-line arguments. If you would like to see this feature included in FlashAmp then please contact us and tell us how you would like to use command-line arguments with FlashAmp.

FlashAmp Pro...

How come there's no data in the upper frequency bands?

If the upper frequency bands of the FlashAmp output contain only zeros (0) then the most likely reason is that the sound has been down sampled at some point (that is, the sample rate has been reduced from the original value) and then it has been re-saved at a higher sample rate. Once a sound has been down sampled then the original high frequency data is lost and cannot be regained by increasing the sample rate. FlashAmp Pro uses the sample rate in the header of the sound file as a basis for the spectrum analysis but in this situation the upper frequency data that should be there have been removed by the previous down sampling operation on the file.

The other possible reason for all zeros in the upper bands is that the sound itself simply does not have high frequency content.

There are also situations where the values in the upper frequency bands are simply low (but not all zeros). This is usual for many sounds because most of the power in the sound spectrum is associated with fundamental frequencies which are concentrated in the lower frequency band. There are two basic ways to make the distribution appear more even:

  • Use Logarithmic Band Ranges (see below), and/or;
  • In FlashAmp 3, reduce the High Frequency limit in the Spectrum panel. You can use the Preview window to help you find a good value for this.
  • In FlashAmp 2, down sample the sound and re-process it. This will have the effect of reducing the overall frequency range that will be analyzed so the distribution of values within the FlashAmp output is often more even. You can still use the higher sample rate version of the sound in Flash if you want to.

If you are still having problems after trying these options then please contact us.


How many frequency bands should I use?

This is largely a matter that depends on the way you want to use the FlashAmp data. The only issue that you need to bear in mind is that the more data Flash has to handle per frame then the more processor power will be required when your Flash file plays. So just be sure to test your final file (which may contain additional animation as well as the FlashAmp animation) on all your target delivery systems.


When should I use the Logarithmic Bands checkbox?

Use this option when you want to get a more even distribution of values throughout the frequency range. Selecting this option causes FlashAmp Pro to distribute the frequency ranges of the spectrum bands logarithmically rather than evenly. The lowest band will have a narrower frequency range than the next band with each band becoming progressively wider. The exact range of the bands will be included in the output data generated by FlashAmp Pro (and in the Preview window of FlashAmp 3).

 

 
HomeFlashAmpTech SpecsEditions ComparedUser GuidesScreenshotsExamplesFAQAmplitudePro XtraAmplitude XtraDownloadSupportOrderContact

 

 

Copyright © 2009 Marmalade Multimedia