Solved

Dynamically loading and playing external .mp3 files

Posted on 2003-11-13
3
936 Views
Last Modified: 2011-04-14
Does anyone have suggestions for how to dynamically load and play external .mp3 files from a Flash movie.  I'm interested in making a movie that does nothing but read a parameter or variable containing the name of a file and then play it.  

I'm a .NET programmer working on an ASP questionnaire application where people see questions one at a time.  With each question they see, they get some question text, a series of controls to respond to the question, and they will have a sound file played which reads the question aloud.

So far I've gotten this to work:

mySound = new Sound();
mySound.attachSound("soundInMyLibrary");
mySound.start();

If I manually load files into the library there's no problem, but it is not ideal because it will be odious to load hundreds of sounds this way.  So my question is really:

Is there a good way to dynamically create the "soundInMyLibrary" which I can use to attach to a sound object?

Also, any ideas about how to change the "soundInMyLibrary" based on a variable that gets passed to the Flash movie?  I think this can by loading some server variables that you pass in a form, but I wonder if people have comments on any other good ways to pass data to a movie (ie, can you get something to it with a parameter specified in the object tag?)

Any comments would be appreciated :)

Thanks
0
Comment
Question by:thinkscript
  • 2
3 Comments
 
LVL 27

Accepted Solution

by:
negatyve earned 250 total points
ID: 9743435
>ie, can you get something to it with a parameter specified in the object tag?)

surely you can:

<object
      classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
      codebase="[...]"
      width="400" height="300">
      <param name=movie value="movie.swf">
      <param name=quality value=high>
      <param name=FlashVars value="soundToPlay=mysong.mp3">
      <param name=bgcolor value=#CCCCCC>
      <embed
            src="movie.swf"
            quality="high"
            bgcolor="#CCCCCC"
            width="400"
            height="300"
            FlashVars="soundToPlay=mysong.mp3"
            type="application/x-shockwave-flash"
            pluginspage="[...]">
      </embed>
</object>

and inside flash:

// ===============================
// if you want the external mp3 to stream
mySound = new Sound();
mySound.loadSound(_root.soundToPlay, true);
// ===============================


or

// ===============================
// if you want the external mp3 to play only
// when fully loaded
mySound = new Sound();
mySound.onLoad = function(success)
{
            if(success)this.start(0,999);
};
mySound.loadSound(_root.soundToPlay, false);
// ===============================


works with flash player 6 +
0
 

Author Comment

by:thinkscript
ID: 9743458
That looks great!!  I can't wait to try it when I get home tonight.  If it works I'll close out the question right away, thanks!
0
 

Author Comment

by:thinkscript
ID: 9744824
Works like a charm!  thanks alot for your help :)
0

Featured Post

Top 6 Sources for Identifying Threat Actor TTPs

Understanding your enemy is essential. These six sources will help you identify the most popular threat actor tactics, techniques, and procedures (TTPs).

Join & Write a Comment

Recently, I was asked to recommend a tracking system to be implemented on a clients website. As the entire site was built on flash, my first thought was to suggest custom built tracking system. However, our company at that point of time didn't h…
Here are some practices and techniques that can be adopted into your Flash/Flex application development process. Note: Not all "performance tips" provide an immediately-recognizable benefit.   This article does not include timing validation data,…
The goal of the tutorial is to teach the user how to set there setting in Adobe Flash Media Live Encoder and YouTube for optimal video and audio quality.
The goal of the tutorial is to teach the user how to select the video input device. Make sure you have an input device that in connected and work and recognized by Adobe Flash Media Live Encoder and select it in the “video input” menu.

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now