Scrubbing bar that controls many timelines

Hi all,
Is it possible for a scrubbing bar on the main stage to control the time lines of many symbols?
I'm using this code from Sarah Justine
Create Click and Touch Draggable Scrubbers with Edge Animate CC | sarahjustine.com
var symDur = sym.getSymbol("timelinePlay").getDuration(); // Get the timeline length of timelinePlay. We'll reference this later in the code.
var mySymbol = sym.getSymbol("timelinePlayl"); // Get the symbol timelinePlay. We'll reference this later in the code.
var scrubber = sym.$("scrubber"); // Touch this to scrub the timeline of timelinePlay
var bar = sym.$("bar"); // Bar the scrubber follows
sym.$("mobileHit").hide(); // Added an extra invisible div to increase the hit region for mobile (hard to grab otherwise)
var dragme = false; // Set the initial dragme function to false
// Detect if mobile device, and if so swap out mouse events for touch events. This is pretty much duplicated code with touch events swapped.
if (/Android|webOS|iPhone|iPad|iPod|BlackBerry/i.test(navigator.userAgent)) {
    sym.$("mobileHit").show(); // Show the extra invisible div to increase the hit region for mobile (hard to grab otherwise)
    $(function () {
        scrubber.bind("touchstart", function (e) { // Enable the scrib on touchstart
            e.preventDefault(); // Cancels the default action of the mobile device - used to ensure our touch events are fired
            dragme = true;
        scrubber.bind("touchend", function () { // Disable the scrubber on touchend
            e.preventDefault();
            dragme = false;
        scrubber.bind("touchmove", function (e) { // Make the magic happen on touchmove
            if (dragme) {
                var touch = e.originalEvent.touches[0];
                var possibleX = touch.pageX;
                var leftX = bar.offset().left;
                var rightX = (leftX + bar.width()) - scrubber.width();
                var scrubWidth = rightX - leftX;
  // Confine the scrubber to the width of the bar
                if (possibleX < leftX) {
                    possibleX = leftX;
                if (possibleX > rightX) {
                    possibleX = rightX;
                scrubber.offset({
                    left: possibleX
                var relativeX = possibleX - leftX;
                var stopTimeline = Math.ceil((relativeX / scrubWidth) * symDur); // Make the scrubber scrub the timeline length of timelinePlay
                mySymbol.stop(stopTimeline); // Stop the timeline of timelinePlay when the scrubber is released
else $(function () {
    scrubber.mousedown(function () { // Enable the scrubber on mousedown
        dragme = true
    $(document).mouseup(function () { // Disable the scrubber on mouseup
        dragme = false
    $(document).mousemove(function (e) { // Make the magic happen on mousemove
        if (dragme) {
            var possibleX = e.pageX;
            var leftX = bar.offset().left;
            var rightX = (leftX + bar.width()) - scrubber.width();
            var scrubWidth = rightX - leftX;
            // Confine the scrubber to the width of the bar
            if (possibleX < leftX) {
                possibleX = leftX;
            if (possibleX > rightX) {
                possibleX = rightX;
            scrubber.offset({
                left: possibleX
            var relativeX = possibleX - leftX;
            var stopTimeline = Math.ceil((relativeX / scrubWidth) * symDur); // Make the scrubber scrub the timeline length of timelinePlay
            mySymbol.stop(stopTimeline); // Stop the timeline of timelinePlay when the scrubber is released
What would be the best way to edit it so the scrubbers effected a few symbols?
At the moment that scrubber is specifically linked to timeLinePlay - but what if we had a few symbols with timelines we could scrub through?
In my scene there are a few buttons that createChildSymbols in a content box, and I would like the user to scrub through the timeline of each symbol with a scrubber bar.
I watched a tutorial on variables so attempted writing a few myself but they didn't seem to work, so I just copied the code a few times on the main stage actions and changed the names of the symbols and scrubbers etc - which unfortunately didn't work either.
I'm sure there is a simple way with variables that this could be achieved
Does anyone have any ideas??
Thank you very much in advance for any advice.

Well I think I've got it..but not quite
So I changed nothing of the Sarah Justine code above
But I just added all the animations to the one time line of timeLinePlay and then grouped the elements for each specific animation
So then when the buttons are clicked they go to timeLinePlay and hide or show the specific groups/ animation.
So the code looks like this for one of the buttons:
var myVariable = sym.getComposition().getStage().play("timeLinePlay");
myVariable.getSymbol("timeLinePlay").$("Group1").show();
myVariable.getSymbol("timeLinePlay").$("Group2").hide();
Which works fine - but it only works for the first click. If i navigate to another button that hides and shows a different element then it doesn't work anymore - it shows nothing
So I tried resetting the timeLinePlay animation with this:
document.compositionReady:
sym.resetTimeLinePlay = function() {
getSymbol("timeLinePlay").$("Group1").hide();
getSymbol("timeLinePlay").$("Group1").hide();
buttons:
sym.getComposition().getStage().resetTimeLinePlay();
But thats not working either - I assume because straight after the reset, the button also says - to play timeline and hide and show elements so its obviously getting confused.
Would anyone possibly know how to fix this?
Thanks you so much in advance

Similar Messages

  • How to make a slide bar that controls opacity

    I'm trying to figure out how to make a slide bar that would control opacity. If I were to take to pictures on top of each other, the slide bar would control the opasity of the top image. Thanks

    can you make a slider that controls anything?  if so, what's the range you can control?
    ie, when the slider is at one extreme it causes some object to have value1 and when it's at the other extreme the object has value2.  what value1, value2 can you handle?

  • Help! scrub-bar and controls missing

    Hi, I have a problem. I was playing a track today and i noticed that the bar with the scrub-control is totally missing. This is true for podcasts also, where the bar for adjusting the playback speed and scubbing is gone. Help! how can I get that back?
    Thanks

    This and more can be found in the manual:
    http://manuals.info.apple.com/enUS/iPhone_UserGuide.pdf

  • How to create Slide bar that control length of a bar

    I have a bar chart and I want this bar to change its length
    when user drag the control on flash default SLIDE component. How to
    do it ? Thanks !!!

    really it's only a matter of using startDrag() and stopDrag()
    methods, and then polling the position of the 'puck' in relation to
    it's travel area, converting it to a percentage and using that
    value to effect whatever you want.
    here is some discussion on the subject, related to scrolling
    an image within a window, but the principles are the same - there
    is also code and an example file
    HERE

  • Scrub bar help

    Hey everyone, so i need to make a scrub bar that works for
    the timeline in my .fla. I was trying my hand at it but I barely
    code at all and I'm not sure why this wouldn't work for the first
    steps:
    I made an octagon that just tweens across the screen. I don't
    know if the below syntax is correct so don't laugh at me : ). Scrub
    is the mc name of the little bar i want dragged. 30 is the amount
    of frames in the tween. 322.9 is the width of the bar on top of
    which scrub is being dragged. With this code I was hoping the bar
    would slide across automatically while the animation played. Please
    help!! Also if anyone knows the next step for making the bar
    clickable with my mouse and allowing me to drag it that would be
    most appreciated!
    var i:Number = oct._currentframe;
    while (i < 30) {
    scrub._x = oct._currentframe/30 * 322.9;
    var i:Number = oct._currentframe;

    This and more can be found in the manual:
    http://manuals.info.apple.com/enUS/iPhone_UserGuide.pdf

  • Can't view audio controls (time remaining, scrub bar, etc.) in os5 on iPhone 4

    Since upgrading to OS5, my iPhone 4 won't display the audio controls during music or podcast playback.
    Very annoying since I really liked the time remaining and scrub features that I had before.
    Is this a bug?  Or is there some setting control that I haven't yet found to re-enable these features?

    Just found the solution on a different thread.
    Turns out that the audio controls can be toggled on and off, though this isn't explained in the manuals.
    paraphrased from the other solution:
    "While your audio file is playing,  double-tap and hold (on the album artwork) until the scrubbing bar reappears.
    A double tap doesn't seem to do it. You have to hold the second tap down to get it to work. Don't lift your finger from the second tap until the scrubbing bar re-appears. "

  • Clickable tabs that control Scroll Bar

    Ok, so here's something I really want to do but am not exactly sure how to pull it off.
    On my Portfolio site: http://www.joshkempdesigns.com
    I've got a scroll bar that allows a user to sift through my work. What I want, along the left site of the content area, are tabs that say "Home, About, Photography, etc..." and I want the user to be able to click one of these tabs and have the scroll bar "slide" the content to that desired area.
    I think this is possible, bt I must be trying things entirely wrong, because I want the user to be able to se the scroll bar at any time as well as quickly have the slider move to a section if they'd rather click a tab.
    Any suggestions?
    Josh

    From within Flash Catalyst, the answer is unfortunately no. However, you can add this functionality with Flash Builder. I built a demo in Flash Catalyst 1.0, so instead of a tab bar, I have 3 buttons that jump to different app icons in the list.
    The core of the code is two lines: setting the selectedIndex of the list (apps.selectedIndex = 3;). Note the list has an id of 'apps'. And setting  apps.ensureIndexIsVisible(3); That line will cause the list to jump to that index. That is all you need to get the base functionality working
    You might something a little visually appealing, so take a look at this post:
    http://graphics-geek.blogspot.com/2009/12/video-programmatic-scrolling-animation.html to add in some nice animation.
    Hope this helps,
    Chris

  • How can I use my Html/CSS Navigation bar to control an Edge Stage?

    I have an HTML/CSS navigation bar set up in my EDGE created page. The Navbar is not created in edge. I would like to use these buttons to control the stage. 
    Inside the stage the main timeline has labels and stop actions every 1.5 secs to create a horizontally sliding site.
    The labels are as follows: home, work, blog, profile, and contact. I can easily use a symbol created inside edge for example:
    sym.play("home");
    and animate a 6000px width symbol across my 1000px stage in 1000px increments.
    I do not want to use a symbol inside of edge to do this because I cannot create the effect that the html/css navbar has on mouseover inside of edge.
    So I am interested in knowing if I can use this bar to control my main timeline so I don't have to sacrifice design for functionality.
    currently the link list is setup with the standard hyperlink. What code would I use to play the stage on click of the html navbar?
    Many thanks to anyone who can help with this!
    Here is the code for the navbar:
    <div id="menu"><ul class="block-menu">
                        <li><a href="/home" class="three-d">
                                  Dynamic
                                  <span class="three-d-box"><span class="front">Dynamic</span><span class="back">Artisans</span></span>
                        </a></li>
                        <li><a href="/demos" class="three-d">
                                  Work
                                  <span class="three-d-box"><span class="front">Work</span><span class="back">Work</span></span>
                        </a></li>
                        <li><a href="/deals" class="three-d">
                                  Blog
                                  <span class="three-d-box"><span class="front">Blog</span><span class="back">Blog</span></span>
                        </a></li>
                        <li><a href="/about" class="three-d">
                                  Profile
                                  <span class="three-d-box"><span class="front">Profile</span><span class="back">Profile</span></span>
                        </a></li>
            <li><a href="/about" class="three-d">
                                  Contact
                                  <span class="three-d-box"><span class="front">Contact</span><span class="back">Contact</span></span>
                        </a></li>
              </ul>
    <span class="block-menu"></span></div>
    Full HTML:
    <!DOCTYPE html>
    <html>
    <head>
              <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
              <meta http-equiv="X-UA-Compatible" content="IE=Edge"/>
              <title>Untitled</title>
    <!--Adobe Edge Runtime-->
        <script type="text/javascript" charset="utf-8" src="workapp_edgePreload.js"></script>
        <style>
            .edgeLoad-EDGE-57204389 { visibility:hidden; }
                  .block-menu {
                                  display: block;
                                  background: #000;
                        .block-menu li {
                                  display: inline-block;
                        .block-menu li a {
                                  color: #fff;
                                  display: block;
                                  text-decoration: none;
                                  font-family: 'Passion One',Arial,sans-serif;
                                  -webkit-font-smoothing: antialiased;
                                  -moz-font-smoothing: antialiased;
                                  font-smoothing: antialiased;
                                  text-transform: uppercase;
                                  overflow: visible;
                                  line-height: 20px;
                                  font-size: 24px;
                                  padding: 15px 10px;
                        /* animation domination */
                        .three-d {
                                  -webkit-perspective: 200px;
                                  -moz-perspective: 200px;
                                  perspective: 200px;
                                  -webkit-transition: all .07s linear;
                                  -moz-transition: all .07s linear;
                                  transition: all .07s linear;
                                  position: relative;
                                  .three-d:not(.active):hover {
                                            cursor: pointer;
                                  .three-d:not(.active):hover .three-d-box,
                                  .three-d:not(.active):focus .three-d-box {
                                            -moz-transform: translateZ(-25px) rotateX(90deg);
                                            -webkit-transform: translateZ(-25px) rotateX(90deg);
                                            -o-transform: translateZ(-25px) rotateX(90deg);
                                            transform: translateZ(-25px) rotateX(90deg);
                        .three-d-box {
                                  -webkit-transition: all .3s ease-out;
                                  -moz-transition: all .3s ease-out;
                                  -ms-transition: all .3s ease-out;
                                  -o-transition: all .3s ease-out;
                                  transition: all .3s ease-out;
                                  -webkit-transform: translatez(-25px);
                                  -moz-transform: translatez(-25px);
                                  -o-transform: translatez(-25px);
                                  transform: translatez(-25px);
                                  -webkit-transform-style: preserve-3d;
                                  -moz-transform-style: preserve-3d;
                                  -ms-transform-style: preserve-3d;
                                  -o-transform-style: preserve-3d;
                                  transform-style: preserve-3d;
                                  pointer-events: none;
                                  position: absolute;
                                  top: 0;
                                  left: 0;
                                  display: block;
                                  width: 100%;
                                  height: 100%;
                        .front {
                                  -webkit-transform: rotatex(0deg) translatez(25px);
                                  -moz-transform: rotatex(0deg) translatez(25px);
                                  -o-transform: rotatex(0deg) translatez(25px);
                                  transform: rotatex(0deg) translatez(25px);
                        .back {
                                  -webkit-transform: rotatex(-90deg) translatez(25px);
                                  -moz-transform: rotatex(-90deg) translatez(25px);
                                  -o-transform: rotatex(-90deg) translatez(25px);
                                  transform: rotatex(-90deg) translatez(25px);
                                  color: #FFE7C4;
                        .front, .back {
                                  display: block;
                                  width: 100%;
                                  height: 100%;
                                  position: absolute;
                                  top: 0;
                                  left: 0;
                                  background: black;
                                  padding: 15px 10px;
                                  color: white;
                                  pointer-events: none;
                                  -moz-box-sizing: border-box;
                                  box-sizing: border-box;
        </style>
    <!--Adobe Edge Runtime End-->
    </head>
    <body>
    <div id="menu"><ul class="block-menu">
                        <li><a href="/home" class="three-d">
                                  Dynamic
                                  <span class="three-d-box"><span class="front">Dynamic</span><span class="back">Artisans</span></span>
                        </a></li>
                        <li><a href="/demos" class="three-d">
                                  Work
                                  <span class="three-d-box"><span class="front">Work</span><span class="back">Work</span></span>
                        </a></li>
                        <li><a href="/deals" class="three-d">
                                  Blog
                                  <span class="three-d-box"><span class="front">Blog</span><span class="back">Blog</span></span>
                        </a></li>
                        <li><a href="/about" class="three-d">
                                  Profile
                                  <span class="three-d-box"><span class="front">Profile</span><span class="back">Profile</span></span>
                        </a></li>
            <li><a href="/about" class="three-d">
                                  Contact
                                  <span class="three-d-box"><span class="front">Contact</span><span class="back">Contact</span></span>
                        </a></li>
              </ul>
    <span class="block-menu"></span></div>
    <div  id="Stage" class="EDGE-57204389">
    </div>
    </body>
    </html>

    I've come across this from the Edge API:
    Edge.getComposition(compId)
    Anyone having trouble with this same issue should try this:
    var targetComp = AdobeEdge.getComposition('TARGETCOMPID');
       targetComp.getStage().play();
    in their trigger or event handler.
    How I got it to work:
    <li><a href="javascript:var targetComp = AdobeEdge.getComposition('EDGE-57204389');
       targetComp.getStage().play();" class="three-d">
                                  Dynamic
                                  <span class="three-d-box"><span class="front">Dynamic</span><span class="back">Artisans</span></span>
                        </a></li>

  • Scrub bar for SWFs

    what i am looking for is an FLV player type component (doesn't have to be an actual component) that will play SWFs. i need it to have all the same functionality (play, pause, scrub bar, etc...) it seems crazy that there isn't one out there i have even looked in the Exchange area and only seem to find ones that control FLVs or MOVs, not SWFs.
    thanks

    The reason there probably isn't a component for swf's is that by their nature, swf's are self-controlled, intended to play in a certain manner with controls provided in them if/as needed to make things play properly.  This includes the provision of movieclips within swf's which can act as movies within movies within movies.... etc.  So to have a component to play swf's would require having some kind of standardized swf design to control, such as a strict animation (no buttons, no movieclips, just frame by frame animation).
    You shouldn't really have much trouble making a player yourself for whatever version of swf you are thinking fits the bill.  If you visit the AS3 forum today you'll find a discussion about scrubbing the timeline which should prove useful to your cause, and as far as play and pause buttons go... that's a simmple matter of implementing buttons that call on play() and stop() functions.

  • Vertical scroll bar disappears on the timeline?

    After I use the vertical scroll bar once it disappears and I am unable to scroll. If I click the film strip on and off, it comes back. Is there a way to always keep the scroll bar visable on the timeline?

    That has got to be a bug. Go to the Motion menu and Provide Motion Feedback... !
    Otherwise, you can scroll with your mouse. I use a mouse with a scroll wheel, but I think I remember the magic mouse has a scroll gesture(?).
    You can make the layers smaller by mousing over one of the lines in the layers list to the left of the timeline. The cursor should change to a double-pointed arrow. Click and drag the layers smaller.
    You can open the timeline window wider by mousing over the Timeline top border, and click drag to make it larger.
    I use this feature so rarely that I had never noticed before. When the scroll bar does appear, it's not "fully formed" either -- just a grey bar -- no resize controls on the ends at all.

  • Scrub Bar Problems

    My scrub bar isn't so percise. When I scrub, the duration is off track. What am I doing wrong? Please help.
    PS, it's stream NOT progressive.
    // ############# CONSTANTS
    // time to buffer for the video in sec.
    const BUFFER_TIME:Number                = 8;
    // start volume when initializing player
    const DEFAULT_VOLUME:Number                = 0.6;
    // update delay in milliseconds.
    const DISPLAY_TIMER_UPDATE_DELAY:int    = 10;
    // smoothing for video. may slow down old computers
    const SMOOTHING:Boolean                    = true;
    // ############# VARIABLES
    // flag for knowing if flv has been loaded
    var bolLoaded:Boolean                    = false;
    // flag for volume scrubbing
    var bolVolumeScrub:Boolean                = false;
    // flag for progress scrubbing
    var bolProgressScrub:Boolean            = false;
    // holds the last used volume, but never 0
    var intLastVolume:Number                = DEFAULT_VOLUME;
    // net connection object for net stream
    var ncConnection:NetConnection;
    // net stream object
    var nsStream:NetStream;
    // object holds all meta data
    var objInfo:Object;
    var dur:Number;
    var totalBytes:Number;
    //rtmp of server hosting the flv
    var FLVServer:String                    = "rtmp://www.chameleon.com/vids";
    //flv file
    // Create a new NetConnection instance
    var conn:NetConnection = new NetConnection();
    // Connect with a null value for progressive FLV files
    conn.connect(null);
    var paramObj:Object = LoaderInfo(this.root.loaderInfo).parameters;
    var strSource:String                    = "6.flv";
    // timer for updating player (progress, volume...)
    var tmrDisplay:Timer;
    // ############# FUNCTIONS
    // sets up the player
    function initVideoPlayer():void {
        // hide buttons
        controlPanel.mcVideoControls.btnUnmute.visible    = false;
        controlPanel.mcVideoControls.btnPause.visible    = false;
        controlPanel.mcVideoControls.normalS.visible    = false;
        // set the progress/preload fill width to 1
        controlPanel.mcVideoControls.mcProgressFill.mcFillRed.width = 1;
        controlPanel.mcVideoControls.mcProgressFill.mcFillGrey.width = 1;
        // add global event listener when mouse is released
        stage.addEventListener( MouseEvent.MOUSE_UP, mouseReleased);
        stage.addEventListener(FullScreenEvent.FULL_SCREEN, onFullscreen);
    // ###### PB HIDEN TIMER
        stage.addEventListener(MouseEvent.MOUSE_MOVE, cPanel);
        function cPanel(event:MouseEvent):void {
            controlPanel.gotoAndPlay(1);
            controlPanel.mcVideoControls.mcProgressScrubber.btnProgressScrubber.visible = true;
            Mouse.show();
        // add event listeners to all buttons
        controlPanel.mcVideoControls.btnPause.addEventListener(MouseEvent.CLICK, pauseClicked);
        controlPanel.mcVideoControls.btnPlay.addEventListener(MouseEvent.CLICK, playClicked);
        controlPanel.mcVideoControls.btnStop.addEventListener(MouseEvent.CLICK, stopClicked);
        controlPanel.mcVideoControls.btnMute.addEventListener(MouseEvent.CLICK, muteClicked);
        controlPanel.mcVideoControls.btnUnmute.addEventListener(MouseEvent.CLICK, unmuteClicked);
        controlPanel.mcVideoControls.btnProgressBar.addEventListener(MouseEvent.MOUSE_DOWN, progressScrubberClicked);
        controlPanel.mcVideoControls.btnVolumeBar.addEventListener(MouseEvent.MOUSE_DOWN, volumeScrubberClicked);
        controlPanel.mcVideoControls.mcProgressScrubber.btnProgressScrubber.addEventListener(MouseEvent.MOUSE_DOWN, progressScrubberClicked);
        big_play.addEventListener(MouseEvent.CLICK, BIGPLAY);
        controlPanel.mcVideoControls.fullS.addEventListener(MouseEvent.CLICK, FullScreen);
        controlPanel.mcVideoControls.normalS.addEventListener(MouseEvent.CLICK, NormalScreen);
        // create timer for updating all visual parts of player and add
        // event listener
        tmrDisplay = new Timer(DISPLAY_TIMER_UPDATE_DELAY);
        tmrDisplay.addEventListener(TimerEvent.TIMER, updateDisplay);
        // create a new net connection, add event listener and connect
        // to null because we don't have a media server
        ncConnection = new NetConnection();
        ncConnection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
        ncConnection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
        ncConnection.connect(FLVServer);
        // set the smoothing value from the constant
        vidDisplay.smoothing = SMOOTHING;
        controlPanel.mcVideoControls.mcProgressScrubber.durationBubble.visible        =    false;
        // set default volume
        controlPanel.mcVideoControls.mcVolumeScrubber.x = (52 * DEFAULT_VOLUME) + 341;
        controlPanel.mcVideoControls.mcVolumeFill.mcFillRed.width = controlPanel.mcVideoControls.mcVolumeScrubber.x - 394 + 52;
    function onFullscreen(e:FullScreenEvent):void {
        // check if we're entering or leaving fullscreen mode
        if (e.fullScreen) {
            // switch fullscreen buttons
            controlPanel.mcVideoControls.fullS.visible = false;
            controlPanel.mcVideoControls.normalS.visible = true;
            // bottom center align controls
            controlPanel.x = (Capabilities.screenResolutionX - 440) / 2;
            controlPanel.y = (Capabilities.screenResolutionY - 33);
            // size up video display
            vidDisplay.height     = (Capabilities.screenResolutionY - 33);
            vidDisplay.width     = vidDisplay.height * 4 / 3;
            vidDisplay.x        = (Capabilities.screenResolutionX - vidDisplay.width) / 2;
        } else {
            // switch fullscreen buttons
            controlPanel.mcVideoControls.fullS.visible = true;
            controlPanel.mcVideoControls.normalS.visible = false;
            // reset controls position
            controlPanel.x = 0;
            controlPanel.y = 330;
            // reset video display
            vidDisplay.y = 0;
            vidDisplay.x = 0;
            vidDisplay.width = 440;
            vidDisplay.height = 330;
    function FullScreen(e:MouseEvent):void {
        stage.displayState    = "fullScreen";
        controlPanel.mcVideoControls.normalS.visible    = true;
    function NormalScreen(e:MouseEvent):void {
        stage.displayState    = "normal";
        controlPanel.mcVideoControls.fullS.visible    = false;
    function BIGPLAY(e:MouseEvent):void {
        if( bolLoaded) {
            nsStream.resume();
        // show video display
        vidDisplay.visible                    = true;
        // switch play/pause visibility
        controlPanel.mcVideoControls.btnPause.visible    = true;
        controlPanel.mcVideoControls.btnPlay.visible        = false;
        big_play.visible    =    false;
    function playClicked(e:MouseEvent):void {
        // check's, if the flv has already begun
        // to download. if so, resume playback, else
        // load the file
        if( bolLoaded) {
            nsStream.resume();
        // show video display
        vidDisplay.visible                    = true;
        // switch play/pause visibility
        controlPanel.mcVideoControls.btnPause.visible    = true;
        controlPanel.mcVideoControls.btnPlay.visible        = false;
        big_play.visible    =    false;
    function pauseClicked(e:MouseEvent):void {
        // pause video
        nsStream.pause();
        // switch play/pause visibility
        controlPanel.mcVideoControls.btnPause.visible    = false;
        controlPanel.mcVideoControls.btnPlay.visible        = true;
        big_play.visible    =    true;
    function stopClicked(e:MouseEvent):void {
        // calls stop function
        stopVideoPlayer();
        big_play.visible    =    true;
    function muteClicked(e:MouseEvent):void {
        // set volume to 0
        setVolume(0);
        // update scrubber and fill position/width
        controlPanel.mcVideoControls.mcVolumeScrubber.x                = 341;
        controlPanel.mcVideoControls.mcVolumeFill.mcFillRed.width    = 1;
    function unmuteClicked(e:MouseEvent):void {
        // set volume to last used value
        setVolume(intLastVolume);
        // update scrubber and fill position/width
        controlPanel.mcVideoControls.mcVolumeScrubber.x = (53 * intLastVolume) + 341;
        controlPanel.mcVideoControls.mcVolumeFill.mcFillRed.width = controlPanel.mcVideoControls.mcVolumeScrubber.x - 394 + 53;
    function volumeScrubberClicked(e:MouseEvent):void {
        // set volume scrub flag to true
        bolVolumeScrub = true;
        // start drag
        controlPanel.mcVideoControls.mcVolumeScrubber.startDrag(true, new Rectangle(341, 19, 53, 0));
    function progressScrubberClicked(e:MouseEvent):void {
        // set progress scrub flag to true
        bolProgressScrub = true;
        controlPanel.mcVideoControls.mcProgressScrubber.durationBubble.visible        =    true;
        // start drag
        controlPanel.mcVideoControls.mcProgressScrubber.startDrag(true, new Rectangle(0, -6, 630, 0));
    function mouseReleased(e:MouseEvent):void {
        // set progress/volume scrub to false
        bolVolumeScrub        = false;
        bolProgressScrub    = false;
        controlPanel.mcVideoControls.mcProgressScrubber.durationBubble.visible        =    false;
        // stop all dragging actions
        controlPanel.mcVideoControls.mcProgressScrubber.stopDrag();
        controlPanel.mcVideoControls.mcVolumeScrubber.stopDrag();
        // update progress/volume fill
        controlPanel.mcVideoControls.mcProgressFill.mcFillRed.width    = controlPanel.mcVideoControls.mcProgressScrubber.x + 5;
        controlPanel.mcVideoControls.mcVolumeFill.mcFillRed.width    = controlPanel.mcVideoControls.mcVolumeScrubber.x - 394 + 53;
        // save the volume if it's greater than zero
        if((controlPanel.mcVideoControls.mcVolumeScrubber.x - 341) / 53 > 0)
            intLastVolume = (controlPanel.mcVideoControls.mcVolumeScrubber.x - 341) / 53;
    var duration:Number;
    function updateDisplay(ev:TimerEvent):void {
        // checks, if user is scrubbing. if so, seek in the video
        // if not, just update the position of the scrubber according
        // to the current time
        if(bolProgressScrub)
            nsStream.seek( Math.round( controlPanel.mcVideoControls.mcProgressScrubber.x * objInfo.duration / 630 ) )
        else
        controlPanel.mcVideoControls.mcProgressScrubber.x = nsStream.time * 630 / objInfo.duration;
        // set time and duration label
        controlPanel.mcVideoControls.lblTimeDuration.htmlText        = "<font color='#FFFFFF'>" + formatTime(nsStream.time) + "</font> / " + formatTime(objInfo.duration);
        controlPanel.mcVideoControls.mcProgressScrubber.durationBubble.lblTimeDuration.htmlText        = "<font color='#FFFFFF'>" + formatTime(nsStream.time) + "</font>";
        // update the width from the progress bar. the grey one displays
        // the loading progress
        controlPanel.mcVideoControls.mcProgressFill.mcFillRed.width        =     controlPanel.mcVideoControls.mcProgressScrubber.x + 5;
        controlPanel.mcVideoControls.mcProgressFill.mcFillGrey.width    =    nsStream.bytesLoaded * 630 / nsStream.bytesTotal;
        // update volume and the red fill width when user is scrubbing
        if(bolVolumeScrub) {
            setVolume((controlPanel.mcVideoControls.mcVolumeScrubber.x - 341) / 53);
            controlPanel.mcVideoControls.mcVolumeFill.mcFillRed.width = controlPanel.mcVideoControls.mcVolumeScrubber.x - 394 + 53;
    function onMetaData(info:Object):void {
    objInfo = info;
    // now we can start the timer because
    // we have all the necessary data
    if(!tmrDisplay.running)
    tmrDisplay.start();
    function netStatusHandler(event:NetStatusEvent):void {
        // handles net status events
        trace( event.info.code );
        switch (event.info.code) {
            case "NetConnection.Connect.Success":
               connectStream();
                break;
            // trace a messeage when the stream is not found
            case "NetStream.Play.StreamNotFound":
                trace("Stream not found: " + strSource);
                break;
            // when the video reaches its end, we stop the player
            case "NetStream.Play.Stop":
                stopVideoPlayer();
                trace('stoped');
            break;
    function securityErrorHandler(event:SecurityErrorEvent):void {
        trace("securityErrorHandler: " + event);
    function connectStream():void {
        nsStream = new NetStream(ncConnection);
        nsStream.bufferTime = BUFFER_TIME;
        // nsStream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
        nsStream.client =  this;
        bolLoaded = true;
        vidDisplay.attachNetStream(nsStream);       
        nsStream.seek(5);
        nsStream.play(strSource);
        nsStream.pause();
        // attach net stream to video object on the stage
        vidDisplay.attachNetStream(nsStream);
        vidDisplay.visible = true;
    function stopVideoPlayer():void {
        // pause netstream, set time position to zero
        nsStream.pause();
        nsStream.seek(0);
        // in order to clear the display, we need to
        // set the visibility to false since the clear
        // function has a bug
        vidDisplay.visible                    = false;
        // switch play/pause button visibility
        controlPanel.mcVideoControls.btnPause.visible    = false;
        controlPanel.mcVideoControls.btnPlay.visible        = true;
    function setVolume(intVolume:Number = 0):void {
        // create soundtransform object with the volume from
        // the parameter
        var sndTransform        = new SoundTransform(intVolume);
        // assign object to netstream sound transform object
        nsStream.soundTransform    = sndTransform;
        // hides/shows mute and unmute button according to the
        // volume
        if(intVolume > 0) {
            controlPanel.mcVideoControls.btnMute.visible        = true;
            controlPanel.mcVideoControls.btnUnmute.visible    = false;
        } else {
            controlPanel.mcVideoControls.btnMute.visible        = false;
            controlPanel.mcVideoControls.btnUnmute.visible    = true;
    function formatTime(t:int):String {
        var remainder:Number;
        var hours:Number = t / ( 60 * 60 );
        remainder = hours - (Math.floor ( hours ));
        hours = Math.floor ( hours );
        var minutes = remainder * 60;
        remainder = minutes - (Math.floor ( minutes ));
        minutes = Math.floor ( minutes );
        var seconds = remainder * 60;
        remainder = seconds - (Math.floor ( seconds ));
        seconds = Math.floor ( seconds );
        var hString:String = hours < 10 ? "0" + hours : "" + hours;   
        var mString:String = minutes < 10 ? "0" + minutes : "" + minutes;
        var sString:String = seconds < 10 ? "0" + seconds : "" + seconds;
        if ( t < 0 || isNaN(t)) return "00:00";           
        if ( hours > 0 )
            return hString + ":" + mString + ":" + sString;
        }else
            return mString + ":" + sString;
    // ############# INIT PLAYER
    initVideoPlayer();

    errr you won't be able to do anything with that......here you go. Don't say I never gave you anything.
    package NetConnections.NetStreams{
    import flash.net.*;
    import flash.events.*;
    import flash.display.Sprite;
    import flash.display.DisplayObject;
    import flash.display.MovieClip;
    import flash.media.*;
    import flash.net.*;
    import NetConnections.NetConnections;
    //import UI.BeginAudio;
    //import UI.RecordAudio;
    //import Main.SendObject;
    import fl.controls.ProgressBar;
    import fl.controls.ProgressBarDirection;
    import fl.controls.ProgressBarMode;
    //import fl.controls.NumericStepper;
    //import fl.controls.Label;
    import flash.utils.Timer;
    public class Audio extends Sprite {
      //var audioS0:NetStream;
      var audioR0:NetStream;
      //var btns1:Object;
      //var mic0:Microphone;
      var rePublishID1:Number;
      //var speaker:int=0;
      var userName00:*;
      var main00:Object;
      public var video0:Video;
      public var progBar:ProgBar;
      //var stepper:NumericStepper;
      //var progLabel:Label;
      //var divID=1;
      var percent;
      var customClient0:Object;
      //var customClient2:Object;
      var duration:Number;
      var step:Number;
      //public var uvCon:Sprite;
      //public var auTrack:Sprite;
      //var micAct:Number;
      //var scale0:Number;
      var oneTime0:int=0;
      var oneTime1:int=0;
      var audioTime0:int=0;
      var yMin:Number;
      var yMax:Number;
      var yOffset:Number;
      var yMin1:Number;
      var yMax1:Number;
      var yOffset1:Number;
      var step1:Number=0;
         var step2:Number=0;
      var amountLoaded:Number;
      var stepper0:Number=0;
      var thisButton:String;
      var stopScrub:int=0;
      var vol:Number =0.75;
      var flashID=0;
      var tim0:Timer;
      //var ID3Meta00:Object;
      //var sFX:SoundChannel;
      //var soundFactory:Sound;
      //var request:URLRequest;
      //var mp3ID:int=0;
      //var T:int=0;
      //var mp3Tim:Timer;
      //var inc:Number;
      //var inc1;
      //var inc2;
      //var inc3;
      public function Audio(audioR:NetStream,userName0:*,main0:Object):void {
       main00=main0;
       //ID3Meta00 = ID3Meta;
       //mic0=Microphone.getMicrophone();
       //mic0.gain =50;
       //mic0.rate=11;
       //audioS0=audioS;
       audioR0=audioR;
       userName00 = userName0;
       main00=main0;
       video0 = new Video(320,240);
       progBar = new ProgBar();
       progBar.progBar.direction = ProgressBarDirection.RIGHT;
       progBar.progBar.mode = ProgressBarMode.POLLED;
       yMin = 0;
       yMax = main00.progBar.progBar.width - main00.progBar.scrubber.width;
       yMin1 = 0;
       yMax1 = main00.track0.width - main00.track0.volThumb.width;
       main00.progBar.progBar.addEventListener(Event.COMPLETE, CompleteHandler,false,0,true);
       main00.play_btn.buttonMode=true;
       main00.play_btn.addEventListener(MouseEvent.MOUSE_DOWN,PlayBack);
       main00.pause_btn.buttonMode=true;
       main00.pause_btn.addEventListener(MouseEvent.MOUSE_DOWN,PausePlayBack);
       audioR0.addEventListener(NetStatusEvent.NET_STATUS,DetectEnd,false,0,true);
       tim0 = new Timer(1000,0);
       tim0.addEventListener(TimerEvent.TIMER,countBuff,false,0,true);
       PlayBack();
      private function PlayBack(e:MouseEvent=null):void{
       main00.pause_btn.x=main00.play_btn.x;
       main00.pause_btn.y=main00.play_btn.y;
       main00.play_btn.x =main00.pause_btn.x;
       main00.play_btn.y =2800;
       if(audioTime0==0){
       SetAudio(0);
       audioTime0=1;
       }else{
       SetAudio(1);
      private function PausePlayBack(e:MouseEvent=null):void{
       main00.play_btn.x =main00.pause_btn.x;
       main00.play_btn.y =main00.pause_btn.y;
       main00.pause_btn.x=main00.play_btn.x;
       main00.pause_btn.y=2800;
       SetAudio(1);
      private function thumbDown(e:MouseEvent):void {
       thisButton ="scrubber";
       stopScrub=1;
          ChangeHandler();
       main00.stage.addEventListener(MouseEvent.MOUSE_MOVE, thumbMove);
       yOffset = mouseX - main00.progBar.scrubber.x;
      private function thumbUp(e:MouseEvent):void {
       stopScrub=0;
       ChangeHandler();
       step1=0;
       step2=0;
       main00.stage.removeEventListener(MouseEvent.MOUSE_MOVE, thumbMove);
      private function thumbMove(e:MouseEvent):void {
       main00.progBar.scrubber.x = mouseX - yOffset;
       if (main00.progBar.scrubber.x <= yMin) {
        main00.progBar.scrubber.x = yMin;
       if (main00.progBar.scrubber.x >= yMax) {
        main00.progBar.scrubber.x = yMax;
       dispatchEvent(new ScrollBarEvent(main00.progBar.scrubber.x / yMax));
       e.updateAfterEvent();
      private function sbChange(e:ScrollBarEvent):void {
       trace(e.currentTarget.name);
       //var vol = Math.floor(e.scrollPercent*100)*.01;
       if(thisButton=="scrubber"){
       //audioR0.seek(step2);
       step1 = Math.floor((main00.progBar.scrubber.x/main00.progBar.progBar.width)*duration);
       audioR0.seek(step1);
       trace(step1);
       //main00.progBar.progBar.setProgress(step1,duration);
       if(thisButton=="volThumb"){
        vol=Math.floor(e.scrollPercent*100)*.02;
        trace("+++++++"+main00.track0.volThumb.x);
        trace(vol);
       if (audioR0 != null) {
       var st:SoundTransform = new SoundTransform(vol);
       audioR0.soundTransform = st;
      //rewind
      private function Rewind(e:MouseEvent):void{
       audioR0.seek(0);
       stepper0=0;
      private function FastFD(e:MouseEvent):void{
      trace("ok");
      var stepper1:Number=Math.floor((main00.progBar.scrubber.x/main00.progBar.progBar.width)*durat ion);
      stepper1++;
      stepper1=stepper1*2;
      if(stepper1>=duration){
       stepper1=duration-2;
      if(main00.progBar.progBar.percentComplete ==100){
       stepper1=duration-2;
       progBar.progBar.reset();
       audioR0.seek(stepper1);
    //volume
    private function thumbDown1(e:MouseEvent):void {
             thisButton="volThumb";
       main00.stage.addEventListener(MouseEvent.MOUSE_MOVE, thumbMove1);
       yOffset1 = mouseX - main00.track0.volThumb.x;
      private function thumbUp1(e:MouseEvent):void {
       main00.stage.removeEventListener(MouseEvent.MOUSE_MOVE, thumbMove1);
      private function thumbMove1(e:MouseEvent):void {
       main00.track0.volThumb.x = mouseX - yOffset1;
       if (main00.track0.volThumb.x <= yMin1) {
        main00.track0.volThumb.x = yMin1;
       if (main00.track0.volThumb.x >= yMax1) {
        main00.track0.volThumb.x = yMax1;
       dispatchEvent(new ScrollBarEvent(main00.track0.volThumb.x / yMax));
       e.updateAfterEvent();
      private function sbChange1(e:ScrollBarEvent):void {
       var vol = Math.floor(e.scrollPercent*100)*.01;
       var st:SoundTransform = new SoundTransform(vol);
       if (audioR0 != null) {
        audioR0.soundTransform = st;
      private function auTrackMic(e:Event):void {
       micAct = Math.floor(mic0.activityLevel);
       if (micAct<=0) {
        scale0 =0;
       } else if (micAct>1&&micAct<=15) {
        scale0=0;
       } else if (micAct>15&&micAct<=30) {
        scale0=0;
       } else if (micAct>30&&micAct<=45) {
        scale0=8;
       } else if (micAct>45&&micAct<=60) {
        scale0=8.5;
       } else if (micAct>60&&micAct<=75) {
        scale0=9;
       } else if (micAct>1&&micAct<=80) {
        scale0=9.5;
       } else if (micAct>1&&micAct<=90) {
        scale0=10;
       } else if (micAct>90) {
        scale0=10.5;
       auTrack.scaleX =scale0;
      function RemoveProgBar(e:Event):void {
       ////trace("progbar gone");
       if (progBar.parent !=null) {
        progBar.parent.removeChild(progBar);
      public function metaDataHandler(info:Object):void {
       duration =info.duration;
       trace("+++++++======="+duration);
       if(duration <=1||!duration){
        audioR0.close();
        main00.progBar.progBar.reset;
        main00.progBar.scrubber.x=main00.progBar.progBar.x;
        addEventListener(Event.ENTER_FRAME,FlashTastic,false,0,true);
      private function FlashTastic(e:Event):void{
    trace("flashing");
    if(flashID==0){
      main00.play_btn.removeEventListener(MouseEvent.MOUSE_DOWN,PlayBack);
      main00.pause_btn.removeEventListener(MouseEvent.MOUSE_DOWN,PausePlayBack);
    RemoveListeners();
    main00.play_btn.enabled=false;
    main00.pause_btn.enabled=false;
    main00.progBar.progBar.setProgress(100,100);
    main00.progBar.progBar.alpha=0;
    flashID=1;
    }else{
    main00.progBar.progBar.alpha=1;
    flashID=0;
    private function ChangeHandler(event:Event=null):void {
       if(main00.play_btn.y ==2800 && main00.pause_btn.y==2800){
          main00.play_btn.y =15;
       if(main00.progBar.scrubber.x==0 && main00.progBar.progBar==100){
        main00.progBar.progBar.reset();
       if (oneTime0==0) {
        //main00.progBar.progBar.reset();
        oneTime0=1;
       //amountLoaded = audioR0.time/duration;
             //main00.progBar.progBar.width = amountLoaded*218;
            if(stopScrub==0){
         main00.progBar.scrubber.x = audioR0.time/duration*main00.progBar.progBar.width;
       //main00.progBar.scrubber.x = percent;
       //seconds//getmetadata
       main00.progBar.progBar.setProgress(audioR0.time,duration);
      percent = int(main00.progBar.progBar.percentComplete);
       if(percent ==100){
        main00.progBar.progBar.reset();
        main00.progBar.scrubber.x=main00.progBar.progBar.x;
      private function Mp3Tim(e:TimerEvent){
          if(oneTime1 ==0){
       //dur total number of segments
       var dur=Math.ceil(soundFactory.length/1000);//number of segments
       trace("duration = "+dur);
          inc = 1;
       oneTime1=1;
       inc = (inc++)+1.114;
       trace(inc);
       dur=Math.ceil(soundFactory.length/1000);//number of segments
       progBar.progBar.setProgress(inc,dur);
       //the end of MP3 is delayed by 5 seconds to allow for slight changes multiple mp3 length .
       if(inc >= dur+5){
       Mp3Fin();
      function CompleteHandler(e:Event):void {
       //oneTime0=0;
       progBar.progBar.setProgress(100,100);
      function Mp3Fin():void {
       mp3Tim.stop();
       mp3Tim.reset();
       mp3Tim.removeEventListener(TimerEvent.TIMER,Mp3Tim);
       dispatchEvent(new Event("TYPE_AUDIOSTOP"));
       oneTime0=0;
       progBar.progBar.setProgress(100,100);
                oneTime1=0;
      private function SetListeners():void {
       main00.play_btn.enabled = true;
       main00.pause_btn.enabled= true;
       main00.progBar.scrubber.addEventListener(MouseEvent.MOUSE_DOWN, thumbDown,false,0,true);
       main00.progBar.scrubber.enabled=true;
       main00.stage.addEventListener(MouseEvent.MOUSE_UP, thumbUp,false,0,true);
       main00.track0.volThumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbDown1,false,0,true);
       main00.track0.volThumb.buttonMode=true;
       main00.track0.volThumb.enabled=true;
       main00.stage.addEventListener(MouseEvent.MOUSE_UP, thumbUp1,false,0,true);
       addEventListener(ScrollBarEvent.VALUE_CHANGED, sbChange,false,0,true);
       main00.rw_btn.addEventListener(MouseEvent.CLICK,Rewind,false,0,true);
       main00.rw_btn.buttonMode=true;
       main00.rw_btn.enabled=true;
       main00.ff_btn.addEventListener(MouseEvent.CLICK,FastFD,false,0,true);
       main00.ff_btn.buttonMode=true;
       main00.ff_btn.enabled=true;
      private function RemoveListeners():void {
       main00.progBar.scrubber.removeEventListener(MouseEvent.MOUSE_DOWN, thumbDown);
       main00.progBar.scrubber.enabled=false;
       main00.stage.removeEventListener(MouseEvent.MOUSE_UP, thumbUp);
       main00.track0.volThumb.removeEventListener(MouseEvent.MOUSE_DOWN, thumbDown1);
       main00.track0.volThumb.enabled=false;
       main00.stage.removeEventListener(MouseEvent.MOUSE_UP, thumbUp1);
       removeEventListener(ScrollBarEvent.VALUE_CHANGED, sbChange);
       main00.rw_btn.removeEventListener(MouseEvent.CLICK,Rewind);
       main00.rw_btn.enabled=false;
       main00.ff_btn.removeEventListener(MouseEvent.CLICK,FastFD);
          main00.ff_btn.enabled=false;
      private function DetectEnd(e:NetStatusEvent=null):void {
       //detect end of audio/video file
                    trace(e.info.code);
       if(e.info.code=="NetStream.Play.Start"){
        vol=vol;
          tim0.start();
       if (e.info.code == "NetStream.Buffer.Full") {
        removeEventListener(Event.ENTER_FRAME,FlashTastic);
        tim0.stop();
        SetListeners();
       if (e.info.code == "NetStream.Play.Stop") {
        audioTime0=0;
        main00.play_btn.x =main00.pause_btn.x;
           main00.play_btn.y =main00.pause_btn.y;
           main00.pause_btn.x=main00.play_btn.x;
           main00.pause_btn.y=2800;
        if (percent < 100) {
         main00.progBar.progBar.reset();
         percent = int(main00.progBar.progBar.percentComplete);
         main00.progBar.scrubber.x = percent;
         RemoveListeners();
        main00.call0.removeEventListener("TYPE_TIMER",ChangeHandler);
        //dispatchEvent(new Event("TYPE_AUDIOSTOP"));
       if(e.info.code=="NetStream.Buffer.Empty"){
        main00.progBar.progBar.reset();
           main00.progBar.scrubber.x = 0;
        step1=0;
      private function countBuff(e:TimerEvent):void{
       addEventListener(Event.ENTER_FRAME,FlashTastic,false,0,true);
      private function SetAudio(btnID) {
       var determine = e.num0[0].toString().search(".mp3");
       if (determine != -1) {
        //play mp3
        var url=e.num0[0].toString();
        request=new URLRequest(url);
        soundFactory=new Sound  ;
        soundFactory.load(request);
        sFX=soundFactory.play();
       mp3Tim=new Timer(1000,0);
       mp3Tim.addEventListener(TimerEvent.TIMER,Mp3Tim,false,0,true);
       mp3Tim.start();
        main00.call0.addEventListener("TYPE_TIMER",ChangeHandler,false,0,true);
                    mp3ID=1;
       } else {
        //play flv
        mp3ID=0;
        if(btnID==0){
         if(main00.uniqueID!=null){
         trace("audio audio");
         main00.call0.addEventListener("TYPE_TIMER",ChangeHandler,false,0,true);
         audioR0.play(main00.uniqueID);
         customClient0 = {onMetaData:metaDataHandler};
         audioR0.client= customClient0;
         video0.attachNetStream(audioR0);
         video0.x=main00.stage.stageWidth/2-video0.width/2;
         video0.y=6;
         addChild(video0);
         removeEventListener(Event.ENTER_FRAME,FlashTastic);
         }else{
         addEventListener(Event.ENTER_FRAME,FlashTastic,false,0,true);
        }else if(btnID==1){
         removeEventListener(Event.ENTER_FRAME,FlashTastic);
        tim0.removeEventListener(TimerEvent.TIMER,countBuff);
        audioR0.togglePause();
        else {
         trace("ok"+e.num0[0]);
         main00.call0.addEventListener("TYPE_TIMER",ChangeHandler,false,0,true);
         customClient0 = {onMetaData:metaDataHandler};
         audioR0.play(e.num0[0].toString());
         audioR0.client= customClient0;
         video0.attachNetStream(audioR0);
         video0.x=186;
         video0.y=245;
         addChild(video0);
      private function RecAudio(e:RecordAudio) {
       var recID = new Date().time;
       audioS0.attachAudio(mic0);
       audioS0.publish(recID.toString(),"live");
       main00.nc1.call("RecordAudio",null,userName00,recID.toString());
    class CustomClient0 {
    public function onMetaData(info:Object):void {
      //trace("metadata: duration=" + info.duration + " width=" + info.width + " height=" + info.height + " framerate=" + info.framerate);
    public function onCuePoint(info:Object):void {
      //trace("cuepoint: time=" + info.time + " name=" + info.name + " type=" + info.type);
    public function onPlayStatus(info:Object):void {
      //trace("onPlayStatus");
    class CustomClient1 {
    //trace("info");
    public function onMetaData(info:Object):void {
      //trace("metadata: duration=" + info.duration + " width=" + info.width + " height=" + info.height + " framerate=" + info.framerate);
    public function onCuePoint(info:Object):void {
      //trace("cuepoint: time=" + info.time + " name=" + info.name + " type=" + info.type);
    public function onPlayStatus(info:Object):void {
      //trace("onPlayStatus");

  • How can I put back the bar that held my go-to site icons?

    I am referring to the bar that has the site address, and Google box. In the past, I placed a lot of icons on that bar, that I got from my bank, utility sites for bills, mail, facebook, etc. It was a great convenience. The bar had a plus sign, to add more icons. A window would appear, that allowed you to choose an icon and enter the site address. A lot of the sites had their own icons, that would automatically appear, in the window. Now, I tried to follow the directions to add icons to the bar, but it looks like there are very few available, and hardly any that I use. I'm hoping that there is a way that can be used to add back the bar's abilities to place very useful icons, that were so easy to use. I'm sure many people are upset also. It's a mystery how anyone could think that the new features would be better than the old, at least for this one bar's usefulness. Thanks, in advance, for your help.

    # Right-click an empty area of the tab bar and choose Customize.
    # Click the Show / Hide Toolbars button near the bottom and make sure "Bookmarks Toolbar" is checked.
    # Make sure the "Bookmarks Toolbar Items" element is on the Bookmarks Toolbar (the bar below the navigation toolbar, which is the part with the address bar and the search box).
    # Click the Exit Customize button near the bottom right when done.
    # When you want to bookmark the current page, drag the icon on the left side of the address bar (usually a globe or a padlock) onto the Bookmarks Toolbar.
    [[Bookmarks Toolbar - Display your favorite websites at the top of the Firefox window]]

  • Idvd '08 revolution theme scrub bar

    The revolution theme in idvd '08 has a scrub bar at the bottom of the image frame, with a check box at each end.
    I cannot quite figure out what the check box does, and what the hatched area that appears in the scrub bar does/
    Anyone have a clue on this?
    Thanks.

    The little check boxes at each end are for write in/out. With the boxes checked, when you enter the menu, it will have a cool "entrance" and "exit."
    -David

  • Org Unit that controls shipping activities

    Question- Which is the org unit that controls the shipping activities of goods?
    Ans-1. Plant and storage location
    Ans-2. Shipping point
    Ans-3. Distribution channel
    Which one is the correct?

    Hello,
    SHIPPING POINT is responsible organisational unit for shipping. and shipping activities
    As you aware for delivery creation the SHIPPING POINT is mandatory.
    The definition of SHIPPING POINT clearly says as,
    Shipping point is an Independent organizational unit that performs shipping processing. You can have many shipping points for a plant but delivery is possible thorugh only one shipping point
    The Organisation unit which falls under the LOGISTICS EXECUTION is shipping point and you can find the  the organisations units under LOGISTICS EXECUTION which are also responsbible for shipping like, loading point, transportation planning point.
    In your question it is the SHIPPING POINT which is controlling the shipping activities

  • FINAL CUT PRO X (the latest version). I'm trying to upload my video to Youtube, I am getting flashing and orange bar in the frame timeline. How to make it STOP!?

    FINAL CUT PRO X (the latest version). I'm trying to upload my video to Youtube, I am getting flashing and orange bar in the frame timeline. How to make it STOP!? It looks like it's rendering somthng but I just want it to stop flashing. I hope it didn't mess up the video...

    You're in totally the wrong place...  this is the Mac Pro (no Book) forum for hardware.  You want
    Final Cut Pro X: Professional Applications: Apple Support Communities
    Hopefully, FCP X has an autosave feature Like Final Cut Pro Studio so that you may already have a recent copy.  If I were in your shoes, I'd try an ESC or something similar before going to a Forced Quit.
    Good luck

Maybe you are looking for

  • Cube not getting all the data from DSO

    Hi experts ,    I have a scenario where i have 256 records in the DSO . I am loading the DSO data into Cube .but the cube is getting loaded with 200 records . Can any body help me in this regard ??? Samir

  • Apple tv keyboard

    How I can make a link on apple tv for entering my password? Thank you for your help

  • Asha 501 can't fetch large MMS

    My Nokia Asha will not receive pictures that are over a certain size limit. If I send a large photo to the Asha 501, it says "Can't download message." If I send a small photo to the Asha 501, it has no trouble displaying the photo. I have 64MBs of fr

  • Unable to remove/hide help icon in Discussion Service OOTB

    Hi, Is there any way to remove/hide help icon from Discussion Service OOTB toolbar ? I am not able to find help icon tag in ListTopics.jsff and ListMessages.jsff fragment file. Regards, Fyaz

  • Collection in dba advisor tables

    I have an Oracle 10g R2, I have been looking into tables dba_advisor tables example dba_advisor_actions and dba_advisor_tasks. But what I don't seem to understand is that I see can a hurdle of problems being identified at one specific time, example A