ActionScript 3.0 :: Audio Synchronization - If The Audio Were On The Timeline You Could Set Sync Params To Stream?
Mar 11, 2010
Because the player optimizes framerate, antialiasing etc dependent on the performance capabilities of the platform upon which it is running, it was nearly impossible to ensure animation syncronization w/ audio. If the audio were on the timeline you could set sync params to stream, but if the audio is loaded programically forget it .. well until AS3 ..The following code throttles the player framerate to lock step the animation to the audio .. not perfect but the principal works ..
I have a long timeline (5000+ frames) with cartoon animation and streaming dialogue sound on it. I've run into the dreaded audio sync problem. I found many discussions, peaking around 2005, but no solutions for this problem. I have a track of silence to ensure frame-dropping even between lines of dialogue. Prior to around 2000 frames the error is not noticeable.
My testing shows that playback is off by 2 frames per 1000 at 24fps. So at frame 10,000 the audio is out of sync with the graphics by 20 frames, nearly a second. This is predictable and reproducible on a variety of PCs and an iMac. I'm publishing to Flash 8 + AS2, but publishing to Flash 9 or Flash 10 don't make any difference at all.
I don't want to split this into multiple SWFs. Scenes don't help. Putting things into multiple movieclips would complicate my controls and our workflow. Just shifting the audio on the timeline is preferable to those solutions, but it makes maintenance difficult.
I did a live stream last week using 282,482,832,1500Kbps streams. What would cause the audio to get out of sync with the live video stream? I'm trying to determine if it was bandwidth related, cpu/memory issue on the FMIS 4.5 server, or an issue with encoding PC exceeding it's limits?
Let me first establish what I want to do:My user is able to record voicenotes on my website, add tags to said notes for indexing as well as a title. When the note is saved I save the path of the note along with the other info in my DB.Now, I have 2 choices to do the recording, both involve a .swf embedded in my site:
1) I could use Red5 server to stream the audio to my server and save the file and return the path to said file to my app to do the DB saving, seems rather complicated since I would have to convert the audio and move it to the appropriate folder that belongs to the user in a server side Red5 app, which I'm not very aware of how to build.
2) I could simply record the audio and grab its byte array, do a Base64 encoding on it and send it to PHP along with the rest of the data that is necessary (be it by a simple POST or an AJAX call), decode it on the server and make the file with the appropriate extension, audio conversion would also occur here using ffmpeg, this option seems simpler but I do not know how viable it is.
The images for animation load okay. The sound loads okay. But the animation images need to be inserted in coordination with the sounds, which is difficult using only the ears There is a visual graph of audio levels in the library window, which I have seen appear in the timeline also but only momentarily. I do not know how to keep the audio graph on the timeline so as to know where to put the images. I can keep the graph open on the little library window when it is open but not on the timeline. how to keep the graph open on the audio track while I work on the image tracks.
When I use the webcam and microsoft to record a video, my audio and video are out of sync.This does not happens when I use the built-in Microphone on the webcam.
I have an animation that I am exporting as either a .wav or .mov file then editing in different software but when I import the new file it is out of sync. That sounds confusing so I will explain. The project is a cartoon and a temp dialogue track was created before animation started. Then that temp track was used to animate over and do lip synching. Recently, actors have re-recorded the original temp dialogue track. So, I need to export the original dialogue track out of Flash, use an editor, in this case Final Cut Pro, and replace the dialogue then export that as an audio file and bring it back into Flash.
But it is always out of sync. I have even exported a .wav file from Flash then immediately re-imported it and put it on the timeline and it is already out of sync. And it is the exact same audio! I don't even know how that could be possible. Surely if you export a wav from Flash and then re-import it, it should be exactly the same.
I am streaming live content via flv but the video is lagging audio by some time. I am using netstream and video but cannot find a way to set the FPS for the video, I think i could fix it if I knew how to adjust the FPS
We are creating a 30-track mixing desk to demonstrate our percussion instruments. Take a look at www.bellpercmixer.com. As you can probably hear, the audio is not properly syncing up.
The files should be exactly the same length (8 seconds) but they are mp3s so I don't know if the compression messes the length up as I know it adds the gap between the loop? More than likely, it is my lack of action script skill that has caused this problem... e.g. does each track need to be on a separate layer with a sync-track type thing? Here is an example of the script:
I have a project that involves playing back a video clip within my swf movie. The video clip plays fine on its own, but when brought into flash the video and audio become out of sync and the movie quality suffers dramatically. I have tried embedding and streaming.
I have a voice over that I am trying to load, and sync with on screen animations. So when the narrator says something the animations back it up. However, when I embed the audio clip in the timeline, it makes my whole flash movie slow to a crawl, and everything gets out of sync anyway. When I load it externally using AS3 like this:
ActionScript Code: var my_sound:VoiceOver = new VoiceOver(); var channel:SoundChannel = my_sound.play();
Everthing works great, but I don't know how to sync it with my movieClip that contains my animations. Is there a way to have the external audio sync with a movieClip on the timeline?
Are there issues with using attachSound to sync sound clips with Movie Clips? I currently am having this problem. I have all my sounds in a separate swf (sounds.swf), then I call the sounds like this: Code: gear1_btn.onRelease = function() { logo.gear1.play(); sounds.gearssmfx.start(); }
I build the movieclips with the sound on the timeline, so that I know they sync up. Then I remove the sound from the movieclip, and actually play the sound with the AS above. The above AS should play the same in the browser, but doesn't. The problem is that the movieclip animations often run slower in the browser than they did within Flash. Is is possible that the movie is running at a slower FPS in the browser? I have noticed that it runs slightly slower in Firefox than IE. I'm currently using 32fps. Here is my development : [URL] Specifically, I'm having problems with the gears next to the letter "S" and "0", click on them to play.
We use a Flash component to allow a user on our web site to record from a Webcam on to our own Flash Media Server. The problem we are having is that the video in a 30 second FLV freezes at the 7th second but the audio continues. The video unfreezes after a couple of seconds but never catches up with the audio. At the very end there's a "Fast-forwarding" of video for the last few seconds so that at literally the last moment, everything's in sync. This happens for almost all of our recordings. Has anyone experienced this type of behavior?
I am using Flash CS3 on a PC. I am trying to export an animation to quicktime (Export > Export movie) and have some problem regarding the sound. The animation contains actionscript 2.0loads external swf contains streaming soundsplay other sounds via actionscript. 4 scenes. When publishing the animation, it works fine, but when exporting it to .mov, the audio goes faster than the video.
Export setting: Video:Compression type: H.264Frame Rate: CurrentKeyFrames: 4 Sound:Compressor: 24-bit integerRate: 48.000KhzSize: 16BitUse: Stereo To be honest, I tried many other compression types and frame rates and keyframes, but nothing seem to work.
I tried: - importing the external swfs into the original animation - creating a streaming silence from frame 1 for continuous sound - capturing the animation using CamStudio, but it's not smooth enough
I am trying to edit and mix sound effects and music for a FLASH animation in ProTools. After much trial and error I figured out how to make an accurate Quick Time of my FLASH file to spot sounds to in ProTools. The problem is when I import my audio into FLASH, it speeds up making it out of sync with the picture. I did several tests and it looks like for ever minute of ProTools the audio in FLASH speeds up 2 frames. Both programs are running at 24 FPS.
It is not a NTSC vs Flim speed issue. All other programs read my PT audio file correctly and show it to be the correct length with the SFX where I placed them. FLASH speeds it up, making my animation not time to the music and effects causing me to resync all my layers. How do I accurately export a sound file into an AIFF format and import it into FLASH without FLASH changing the speed? I have my audio set to Stream as it should be. After 3 minutes my audio is 8 frames (1/3 of a second) out of sync with the picture.
I am calling some streaming video on frames 1-11 to play for a multiple choice game. My video and audio are out of sync at times on frames 3-11? [code]...
I've had FMS running on my local machine for a while and have had a little experience writing FMS apps, but I've just tried recording audio for the first time using the standard vod application and I keep getting a "Write access denied for stream" error. My AS3 code is copied and pasted for various examples and am confident that it works.
I'm running Windows XP service pack 3 & FMIS 3.5.
I've had a look at the vod/media directory and under windows->properties the read-only attribute is ticked. Every time I un-tick this it reverts back to being ticked. I've googled this and MS say that most programs ignore the read-only attribute and that it only really applied to files. I've also tried the MS fix for setting the read-only attribute via cmd and still no joy (doesn't fix read-only attribute or FMS recording the audio after setting via cmd).
I've also tried our dev server install of FMS (running under linux) and am getting the same results.
Here's my AS3 code...
private function initApp(event:Event):void { removeEventListener(Event.ADDED_TO_STAGE,initApp);
I'm using Flash CS4 to animate hi-def music videos. It seems that I can't keep the audio to stay in sync for anything over 2 or 3 minutes.
- I'm working a stage at 1280x720 and 30 fps
- audio is streamed on a separate layer
- mp3 publish settings are: stereo 128kbs
Inside the FLA file everything syncs perfect, but when it's published, everything drifts in the SWF and in everything else I've tried.I've tried exporting image sequences and popping the sequences into premiere pro to match up with the original wave, and i've also put the swf file in a premiere pro project as well. Whether a SWF or an image sequence, it always lapses after 2 or 3 minutes.
I created a Flash program that utilizes audio and text. The audio is located in an external folder and is loaded using .loadSound(). The text is located on the timeline and appears based on a certain time in the audio. I have a pre-loader that looks to ensure all of the external audio is loaded before the user can move onto the appropriate screen and the audio would play. This is using a combination of the .getBytesTotal and .getsBytesLoaded.
It works fine on Windows 7 but doesn't seem to be working one particular user's Windows XP on IE 7 (So it's not happen on all Windows XP). On a particular user's computer, the text is slow to load while the sounds loads pretty quickly leaving the text out of sync. After a few screens, the text will catch up with the audio.
I am having trouble getting audio stream meta data from an Akamai FMS stream. Everything is undefined and I'm not sure why. I am hoping maybe someone will notice something that I am overlooking. The stream is connecting and playing without a problem I just can't seem to figure out why all the meta data is undefined.
I'm trying to record a stream from a webcam using FMS4 developer edition. The streams are recording on a linux box in .flv files. These files though have problems.
1 - The video quality is terrible. Fuzzy/blocky. Any kind of motion looks awful. Is there any way to improve this?
2 - The sound jumps/skips and goes out of time with the video.
As it is now this is useless. I am trying to make a system where a user records a short video from the camera and then I upload it to YouTube from my server. If you use Youtube's webcam page the video quality is quite acceptable and the audio is obviously in sync too, so they must know something I don't. [URL]..
Following this tutorial: http:[url].....But I keep getting this error message:1046: Type was not found or was not a compile-time constant: CuePointEvent.
how to sync to mpr3 audio files at specific points?
I'm interested in setting up a site where I can put MP3 files on my server (outside the web root) and stream them to a flash application. I'm not talking about progressive download here. The basic idea is to let visitors hear a band's music without actually downloading or caching an mp3 or SWF which could be located as a file and saved or ripped.I have seen this awesome tutorial on streaming an flv and was wondering
I'm trying to setup an audio-only, on-demand HLS stream in FMS 3.5. I have no problems streaming the sample f4v files via HLS, nor do I have any issues streaming the mp3 files via RTMP to a Flash client. However, when I try to stream a sample mp3 via HLS (the mp3 file is located in the same directory as the sample f4v's), I get a 404 error. I can't find anything in the documentation about streaming audio via HLS on-demand.