Solved

Stopping sound when frame is exited

Posted on 2009-05-12
11
370 Views
Last Modified: 2013-11-12
Hi,
I have a problem. I dragged this movieclip to my stage which resides in a movieclip that is called tino the main timeline. The .mp3 player works fine but when I navigate away from the page the sound is still playing. How do I turn this sound off when the frame is left by the user? I know I probably have to use the Sound.close(); but I have no clue how to implement this. I have tried many many ways to get this to work.

Thanks,
Tammy
// Create the Sound objects and URLRequest that will hold the audio files

var music:Sound = new Sound(new URLRequest ("audio/saveyourbreath.mp3"));
 

// Create the Sound Channel variable

var sc:SoundChannel;
 

// Variable to stop initial playing of song when user loads page

var isPlaying:Boolean = false;
 

// Create function for Stop button

function stopMusic(e:Event):void {

	sc.stop();

	isPlaying = false;

}
 

// Create function for Play Button

function playMusic(e:Event):void

{

	if (!isPlaying)

	{

		sc = music.play();

		isPlaying = true;

	}

}
 

// assign button functions to the buttons Play & stop buttons

playbtn.addEventListener(MouseEvent.CLICK, playMusic);

stopbtn.addEventListener(MouseEvent.CLICK, stopMusic);
 

// Volume Slider

// Set Dragging variable of slider to False

var dragging:Boolean = false;
 

// x and y coordinates of slider and 

// the width of the line to be ale to slide along and the height set to 0

var rectangle:Rectangle = new Rectangle(0,0,100,0);
 

// Add event listener to volume slider buttons

volume_mc.slider_mc.addEventListener(MouseEvent.MOUSE_DOWN, dragIt);

stage.addEventListener(MouseEvent.MOUSE_UP, dropIt);
 

// Set functions of the slider

function dragIt(e:Event):void {

	volume_mc.slider_mc.startDrag(false,rectangle);

	dragging = true;

	

	// event listener to adjust volume

	volume_mc.slider_mc.addEventListener(Event.ENTER_FRAME, adjustVolume);

}

function dropIt(e:Event):void {

	if(dragging)

	{

		volume_mc.slider_mc.stopDrag();

		dragging = false;

	}

}
 

// function to adjust the volume of the audio clip

function adjustVolume(e:Event):void {

	// find coordinates of volume_mc and divide by 100 to adjust volume

	var vol:Number = volume_mc.slider_mc.x/100;

	var st:SoundTransform = new SoundTransform(vol);

	if (sc != null)

	{

		sc.soundTransform = st;

	}

}

Open in new window

0
Comment
Question by:ladyrider12
  • 7
  • 4
11 Comments
 
LVL 11

Expert Comment

by:greeneel
ID: 24370478
hello.

could you tell me how the user leaves the frame in question.

1  does he have to press a button to leave the frame.
2  is the user made to leave after a loading process is completed


GE
0
 

Author Comment

by:ladyrider12
ID: 24370507
The user leaves the frame by clicking navigation buttons whichare also movie clips.
0
 
LVL 11

Expert Comment

by:greeneel
ID: 24370620
did you try attaching the stop sound script to the onClick function of the button?

GE
0
 

Author Comment

by:ladyrider12
ID: 24370641
I'm sorry. I am learning actionscript and I am not sure what you mean. I have tried numerous things. What would you do with the code snippet I gave in the thread? Wouldn't that stop the sound when you click the on button or am I understanding you wrong?
0
 
LVL 11

Expert Comment

by:greeneel
ID: 24370777
what i mean is..

which one is the script belong to the button you would use to navigate away from the frame

GE
0
What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 

Author Comment

by:ladyrider12
ID: 24370875
Actually there are numerous buttons that are in movieclips themselves. If you send me your email address I can send you the file. It is not uploading to here even though I have .zip it.
0
 

Author Comment

by:ladyrider12
ID: 24371195
Uploaded my file to one of my websites.

http://www.discounthorsetack.net/TamaraThoel_final2.fla
0
 
LVL 11

Assisted Solution

by:greeneel
greeneel earned 50 total points
ID: 24371198
speraspearpro@yahoo.com
0
 

Author Comment

by:ladyrider12
ID: 24375303
I figured it out. I put a stop(); at the beginning of each page or frame and this got the sound to stop.
Thanks for you help.
0
 

Accepted Solution

by:
ladyrider12 earned 0 total points
ID: 24375313
My instrustor may not be happy with this simple work around but I really don't care after 2 days of working on it. LOL
0
 

Author Comment

by:ladyrider12
ID: 24375389
Even though I figured it out. This moderator was very patient and tried to help me.
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

While working over numerous projects I often had the requirement for doing a screen capture in AS3.0. Unfortunately I found no "ready made" solutions in google search that suited my requirements. But I did come across some great resources which help…
I have found that much of my time doing support ends up being a constant repetition of the same steps to different people.  Early on I stated using web pages with Frequently Asked Questions (FAQs) to alleviate most of the burden.  Sometimes this jus…
The purpose of this video is to demonstrate how to add AdSense Ads to a WordPress Website, and how to set up WordPress to automatically place Ads in Sidebars. This will be demonstrated using a Windows 8 PC. Log into your AdSense account. : Cli…
The goal of the tutorial is to teach the user how to use the auto adjust feature and what the different options do. When your video is not working right you can choose the auto adjust feature to help choose your settings.

708 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

18 Experts available now in Live!

Get 1:1 Help Now