Actionscript :: Audio - Analyze Sound Ahead Of Time?
Oct 11, 2011
I would like to create a game that would analyze an mp3 a few seconds ahead of where it is playing live. A basic idea would be similar to guitar hero, the 'frets' you can see coming and prepare, then they hit and sync with the song in real time.
Is there a way to analyze a Sound file ahead of time, or analyze a muted Sound file?
I was wondering if it is possible to analyze music playing on a user's computer and show visualizations of it using computerSpectrum? Basically, can Flash read the audio playing on a computer or just the user's microphone?
referring to my old question AS3: Analyzing sound spectrums one by one, one channel at once , with flash player 11 and using Sound.extract,is it possible to extract a single channel and manipulate/visualize it's spectrum? I mean, if i mix 2 sounds into one file, can i control them separately, acting on thing like their soundwaves or volume?
I am streaming a playlist of multiple mp4 video files and have been experiencing strange netStream.time values when the buffering is set for an extra long time on slow connections.
For example, when starting the video, if I set the buffer to something like 90 seconds, while filling the buffer netStream.time reads 0. The second the buffer is full, instead of reading 0,1,2 +++ it jumps to a really high value, in this case 53535 and sticks there until the video, which seems to play correctly from the begining ,catches up to that time and then starts incrementing as it should. What's odd about this is that the time the netStream.time gets stuck to always corresponds to the end/begining point between two streams in the playlist. For whatever reason this always seems to be the third video in the playlist. IF I seek to a new location, it re buffers, and then the time properly is stuck at the time that corresponds to the end of the 4th stream.
If the connection is relatively fast and the buffer is set to a smaller value, I never see any issues.
I know netStream.time is notoriously buggy, but something tells me there is more going on here.
I'm streaming audio using NetConnection and NetStream. I know that you can modify sample data in real-time with the Sound object, however I cannot find the SampleDataEvent for audio playing with the NetStream object. Is there a way to pass the audio from the NetStream object to a Sound object and modify the sound at that object instead?
I am streaming a playlist of multiple mp4 video files with flash 9 and FMS 3 and have been experiencing strange netStream.time values when the buffering is set for an extra long time on slow connections. When I have my buffer set to something like 60 seconds I'll start experiancing this problem:
the NetStream.time value will return 0 on progress events while buffering, but the moment the buffer is full, instead of reading 0,1,2 +++ it jumps to a really high value, in this case 53.5 seconds, and sticks there until the video (which seems to play correctly from the beginning) catches up to that time and then the netStream.time starts incrementing as it should.
Another relevant fact is that the time the netStream.time gets stuck to always corresponds to the end/begining point between two streams in the playlist. For whatever reason this usually seems to be the third video in the playlist. If the connection is relatively fast and the buffer is set to a smaller value,
I'm very used to building things with hard references in mind using AS2. I build it knowing I'm going to put a panel A in _level0.panela_mc and interface B in _level0.interfaceb_mc and Login Prompt in _level0.login_mc.login_com, etc etc.. I always know these will exist and you simply reference them via _level0.whatever. What is the new strategy to managing references to lots of sprites?
If I build a panel in a class method, the var somepanel:Sprite = new Sprite() I create inside the method to hold the panel I'm making will be up for garbage collection if I don't make sure a reference stays intact (via either add it to a display list, add an event handler, etc..). The reference "somepanel" I made in the method will go out of scope at the end of the method as well. Should I expect to have needed to make a class variable ahead of time to store a reference to this? Should I be keeping a class genericObject:Object that holds a list of references to everything I ever make almost like a global registry?I'm just used to AS2. You just create a movieclip and when the method ends, the clip still exists and you know the _level0.ref.ref.ref will always exist and how to get back to it.
How are larger projects managed where content loaded isn't known ahead of time and the layout is rather dynamic. What are the strategies used to manage all that dynamic chaos?Lastly I'm so overly used to being able to target a movieclip using a single daisy chained list of clips, like: _level0.this_mc. that _mc.those_mc. I noticed I can't seem to do this approach with the getChild() approach. using someSprite.getChildByName('this').getChildByName ('that') .get ChildByNa me('those') doesn't work. How do you drill down into nested clips? I did notice I can do it one level at a time, such as: refA = someSprite.get ChildByName('this'); refB = refA.getChildByName('that'); refC = refB.getChildByName('those'); .. Is that what I'm expected to do?
I am converting from .FLV's to .F4V. Video outputs fine but the audio sound stops after a few seconds from the beginning.I have tried many different settings for the audio with no luck. Also, tried on a colleague's machine who is running CS3, which works fine, so something is buggy in CS4...
I have a broadcasting project that I've got where the host of the show can have multiple sound effects they can use on their show.I'm wondering if the only way to go about this is for all the clients listening to the show need to download the mp3 of that sound effect or if the sound effect could come from the host ...like combining his mic (for his voice) but also straight audio (the sound effect) into the stream.
It appears my sound is off sync and the longer I play the movieclip, the farther off sync it goes. Its nothing too complicated, just some basic shooting sounds that fire every time I hit the space bar. My code is below:
The Attack() method gets called from another class that handles all keyboard controls.when it gets called the sound then plays.firesound and firesound2 are almost the same. firesound2 sounds a little off pitch to make it sound more realistic.At first the sound sounds pretty good, not great. but then it gets terrible as time passes.
I made a new .fla project. and I attached the following class to it by it self. so the following is the only code in the entire .fla project and the issue still occurs. I press the spacebar and the sound starts a day late.
Would it be possible to analyse a jpeg to see what colour or colours are more prominent and use them for further purposes. One implementation I am trying todo is have text go over changing images, keeping the text the same colour leaves problems with readablity with say a black-ish or white-ish backing. Just something that I would like, not entirely sure if its possible or how it could be done.
Is there a way to trigger a movie clip to go ahead one frame within it?I currently have a drag and drop interactivity where I want my drop target (which is a movie clip) to go ahead one frame within it everytime the right drag object is dropped on it. I would assume it is going to go under my if statement. Here is my current if statement to help:
What I mean is, can I add a sound that will only play if there are enough frames for the sound?I want to only play on the frames that it is on, but it plays all the way through the sound file regardless of the amount of frames.
Is it possible to mix several audio streams? I want to play several audio tracks simultaneously, but several factors that are at times, the audio tracks are out of sync, such as latency Sound.play method, the for loop, the spec of users PC, FLash Player version, operating system etc
I'm looking to start learning a scripting language for web audio and sound development. It needs to be able to handle simultaneous audio events, eg; to trigger a sound when another is playing (I'm not sure if and how this is possible, but have witnessed this kind of presentation: [URL] (can this kind of thing be done with JavaScipt?, this looks like AS / Flash)).
From what I can tell the choice appears to be between JavaScript (JS) and ActionScript (JS), with details as follows: - If going the JS route (look into JS and HTML(5) audio capability) Learn about the basics of HTML and CSS, and then start to look into JavaScript, Ajax, and JQurey (library / framework for JavaScript). If going the AS route Will not need to know as much about HTML and CSS. AS is the language behind Flash. Not supported on the i-phone(?) I know Java to around an intermmediate level.
I'm working on an app to stream audio from shoutcast. The streaming goes well on my computer and when debugging it with an Android-configuration. But when I deploy it to an APK-file and run it on a Samsung Galaxy S, the streaming doesn't work.
My code for streaming the audio: var urlRequest:URLRequest = new URLRequest("http://.../;"); var soundContext:SoundLoaderContext = new SoundLoaderContext(2000, true); soundChannel = new SoundChannel(); sound = new Sound(urlRequest, soundContext); soundChannel = sound.play();
I've also tried an addEventListener(Event.COMPLETE), it seems my app doesn't get there when running on a Samsung Galaxy.
I've been working on a Flash/XML audio player and have been struggling with getting the audio to stream. Right now I have Flash create a list of songs based on the loaded XML file, which works, and I want to be able to click on one of the listed items for the song to start playing. When an item is clicked on, Flash will trace out a message from an onLoad command, but the audio never starts playing.
I opened a new Flash file to test the non-working segment of code and I still can't get it to co-operate.
Code: var currentsong:Sound = new Sound(); currentsong.loadSound("http://www.vtspencer.com/recordjackets/beta/media/file_11.m4a",true);
[Code]...
All that happens is that the trace saying "Should be playing" comes through. The music still won't start.
I'm picking up Flash and AS3 after working with AS1 a few years back. My first project is a mp3 player that is able to take an mp3 file, a start loop point, and an end loop point to loop the mp3 without any gaps or breaks in the sound.
I found this page that got me started, and went off of that code. The resulting player works perfectly except for one fatal flaw. As far as I know, the mp3 file must be fully loaded to be able to use the Sound.extract method on it, this can take a while when the files are 3-4 MB, especially on slow connections. I want to be able to have the audio start playing as soon as the mp3 file begins loading.Is there any way to use the Sound.extract method on a streaming audio file that has not fully loaded yet?
I am creating a flash project which contains video on a few pages. The project also contains background music which loops continuously. The goal is to have the background music stop whenever the user is on a page containing video and for the music to play again when the user leaves said page. The script I created works to stop the music, but it also stops the audio contained within the video and causes the video player (by proxxus) to lock up.
Here's the setup: Library: music.wav - linkage = "myMusic01"
Main Timeline: Code: //-- create a variable to determine if the current movie contains video var currMovie:String = "notVideo"; //-- start playing sound object myMusicMc.myMusic.start(0, 999); [Code] .....
On the actions layer of the movie clip containing my navigation controls snippet of the callback used Code: videoLink_mc.onRelease = function() { _parent.prodDetail_mc.gotoAndPlay("video"); _root.currMovie="Video"; } on all the other buttons currMovie is set to "notVideo".
I'm using an mp3player skin, but the running time won't work (bottom of code)--it stays at "0:00" when you hit play. Everything else is working fine.[code]
As I've searched a lot and couldn't find it I thought of asking it here. Is there any good package or tutorial on Audio Manipulation? With this I'm not talking about play/stop/volume etc, but more on bitrate/speed manipulation etc. Or reading values in the sound (like an EQ does basically).
I have a few animations that run on different scenes each time a scene is loaded the external audio should start with it. Well here is the thing the animation always starts before my audio files and each scene gets bugged. I need to create an action that only allows my scene to start with the audio and also starts loading the next audio so it wont be dellayed.
On the first scene I have the following code: scene 1 frame 1 var autoPlay:Boolean; if(!autoPlay){ stop();} scene 1 frame 2 animation starts and audio 1 loads import flash.media.Sound; [Code] .....
Is it possible to play multiple sound files using a single sound object? (I've looked into this back when I was using Flash CS3, but I want to know if anything has changed.)
(I'm trying to make a playlist which will play music in the background of my SWF movie and then have a frame where users can change the song and the volume.)