Comunidad de diseño web y desarrollo en internet online

Background flv que no loopee

Citar            
MensajeEscrito el 07 Ago 2009 01:27 pm
Hola! les queria hacer una consulta, tengo un fla donde cargo un flv como background pantalla conpleta. La consulta es como puedo hacer que reproduzca una sola vez, no como en este caso que loopea..

.FLA
FRAME 1

Código ActionScript :

stop();
// import needed Classes
import mx.transitions.Tween;
import mx.transitions.easing.*;
import flash.filters.BlurFilter;
import flash.filters.GlowFilter;
import flash.filters.DropShadowFilter;
import flash.geom.*;
///////////////////Initialize Vars
var siteXML:XML = new XML();
siteXML.ignoreWhite = true;
// The main site XML file
var siteXMLFile:String = "main.xml";
// Configs stored in XML
var navPadding:Number;
var myLogo:String;
var backgroundMusic:Boolean = true;
var myMusic:String;
var navActiveColor:String;
var navRollOverColor:String;
var navOutlineCol;
var navBGgradTop:String;
var navBGgradBottom:String;
var subnavActiveColor:String;
var subnavRollOverColor:String;
var subnavOutlineCol;
var subnavBGgradTop:String;
var subnavBGgradBottom:String;
var navFontSize:Number;
var subnavFontSize:Number;
var footerInfo:String;
var footerColor:String;
var logoX:Number;
var logoY:Number;
// Navigation stored in XML
var linkTotal:Number;
var linkName:Array = new Array();
var linkModule:Array = new Array();
var linkData:Array = new Array();
var linkBG:Array = new Array();
var linkSubs:Array = new Array();
var menuStartPosition:Number = 0;
var submenuStartPosition:Number = 0;
var moduleData:String;
var my_sound:Sound = new Sound();
var txtCSS = new TextField.StyleSheet();
var formatLink:TextFormat = new TextFormat();
var formatSubLink:TextFormat = new TextFormat();
subnavheader_mc._alpha = 0;
sublinks_mc._alpha = 0;
var currentVol:Number;
// Global stylesheet - All text in every module is styled by this
txtCSS.load("styles.css");
// Load site configurations and build navigation
siteXML.onLoad = function(success) {
   if (success) {
      // Fill up our arrays
      navPadding = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.navPadding);
      myLogo = this.firstChild.childNodes[0].childNodes[0].attributes.myLogo;
      backgroundMusic = this.firstChild.childNodes[0].childNodes[0].attributes.backgroundMusic;
      myMusic = this.firstChild.childNodes[0].childNodes[0].attributes.myMusic;
      navActiveColor = this.firstChild.childNodes[0].childNodes[0].attributes.navActiveColor;
      navRollOverColor = this.firstChild.childNodes[0].childNodes[0].attributes.navRollOverColor;
      navOutlineCol = this.firstChild.childNodes[0].childNodes[0].attributes.navBGOutlineColor;
      navBGgradTop = this.firstChild.childNodes[0].childNodes[0].attributes.navBGtopGradientColor;
      navBGgradBottom = this.firstChild.childNodes[0].childNodes[0].attributes.navBGbottomGradientColor;
      subnavOutlineCol = this.firstChild.childNodes[0].childNodes[0].attributes.subnavBGOutlineColor;
      subnavBGgradTop = this.firstChild.childNodes[0].childNodes[0].attributes.subnavBGtopGradientColor;
      subnavBGgradBottom = this.firstChild.childNodes[0].childNodes[0].attributes.subnavBGbottomGradientColor;
      subnavActiveColor = this.firstChild.childNodes[0].childNodes[0].attributes.subnavActiveColor;
      subnavRollOverColor = this.firstChild.childNodes[0].childNodes[0].attributes.subnavRollOverColor;
      footerColor = this.firstChild.childNodes[0].childNodes[0].attributes.footerColor;
      // Apply custom attributes to the template
      var footerBGColor = new Color(footer_mc.bg_mc);
      footerBGColor.setRGB(footerColor);
      navFontSize = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.navFontSize);
      subnavFontSize = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.subnavFontSize);
      formatLink.size = navFontSize;
      formatSubLink.size = subnavFontSize;
      // Position Logo
      logoX = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.logoX);
      logoY = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.logoY);
      logo_mc._x = logoX;
      logo_mc._y = logoY;
      footerInfo = this.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue;
      footer_mc.footer_txt.html = true;
      footer_mc.footer_txt.autoSize = "left";
      footer_mc.footer_txt.htmlText = footerInfo;
      footer_mc.footer_txt.styleSheet = txtCSS;
      linkTotal = this.firstChild.childNodes[1].childNodes.length;
      for (var i:Number = 0; i<linkTotal; i++) {
         linkName.push(this.firstChild.childNodes[1].childNodes[i].attributes.name);
         linkModule.push(this.firstChild.childNodes[1].childNodes[i].attributes.module);
         linkData.push(this.firstChild.childNodes[1].childNodes[i].attributes.data);
         if (this.firstChild.childNodes[1].childNodes[i].attributes.background) {
            linkBG.push(this.firstChild.childNodes[1].childNodes[i].attributes.background);
         } else {
            linkBG.push("");
         }
         if (this.firstChild.childNodes[1].childNodes[i].childNodes) {
            linkSubs.push(this.firstChild.childNodes[1].childNodes[i]);
         } else {
            linkSubs.push("");
         }
      }
      // Build main site navigation
      buildMenu();
      if (linkBG[0] != "") {
         loadBackground(linkBG[0]);
      }
      if (linkSubs[0] != "") {
         loadSubMenu(linkSubs[0]);
      }
      // Load logo
      loadMovie(myLogo, logo_mc);
      loadModule(0);
      if (backgroundMusic == "yes") {
         toggleMusic(false);
         currentVol = 100;
      } else {
         footer_mc.musicControls_mc._visible = false;
      }
      position();
   } else {
      trace("Cannot load XML File");
   }
};
siteXML.load(siteXMLFile);

// Load custom background
function loadBackground(arg) {
   var myvar:String = arg;
   var fileExtension:String = substring(arg, arg.length-2, 3);
   videobackground_mc.ns.close();
   videobackground_mc._alpha = 0;
   background_mc.target_mc._alpha = 0;
   // Looks for file extensions (png, jpg, jpeg, flv, swf)
   var cleanFileType:String = fileExtension.toLowerCase();
   switch (cleanFileType) {
      case "jpg" :
      case "png" :
      case "epg" :
      case "gif" :
      smoothImageLoad(arg, background_mc.target_mc);
      break;
      case "flv" :
      case "f4v" :
      case "mp4" :
      case "m4v" :
      case "mpa" :
      case "3gp" :
      case "mov" :
      videobackground_mc.myPlay(arg);
      var showVideoBG:Tween = new Tween(videobackground_mc, "_alpha", None.easeOut, 0, 100, 1, true);
      break;
      case "swf" :
      loadSWFBG(arg, background_mc.target_mc);
      break;
      default :
      trace("Incorrect file type set as a background");
      break;      
   }
}



MC: videobackground_mc

Código ActionScript :

var nc:NetConnection = new NetConnection();
nc.connect(null);
var ns:NetStream = new NetStream(nc);
ns.setBufferTime(5);
video_mc.smoothing = true;
trans_btn.useHandCursor = false;

video_mc.attachVideo(ns);

ns.onMetaData = function(obj) {
   //trace("FLV width: "+obj.width+" px.");
   //_parent.position();
};

ns.onStatus = function(info) {
   if (info.code == "NetStream.Play.Stop") {
      ns.seek(0);
      ns.pause(true);
   }
   //trace(info.code);
};

function myPlay(vid) {
   vidPlaying = true;
   playState();
   ns.play(vid);
}

XML

Código XML :

<?xml version="1.0" encoding="utf-8"?>
<main>
   <config>
      ...............
      ...............
   </config>
   <navigation>
      <link name="HOME"  background="images/prueba.flv" />
   </navigation>
</main>


Desde ya muchas gracias!!!

Por T1000

Claber

121 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 08 Ago 2009 05:08 pm
En principio el code lo vuelve al principio y lo pausa:

Código ActionScript :

ns.onStatus = function(info) { 
   if (info.code == "NetStream.Play.Stop") { 
      ns.seek(0); 
      ns.pause(true); 
   } 
   //trace(info.code); 
}; 


Verifica si está entrando en ese if

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 08 Ago 2009 06:39 pm
a mi me gustaria ver el resultado de tu pagina en construccion... se ve muy interesante en realidad

saludos

Por Jezzini

16 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Ago 2009 06:41 pm
si a mi tambien!!

Por sforero

478 de clabLevel

1 tutorial

 

social media expert world

chrome
Citar            
MensajeEscrito el 08 Ago 2009 07:35 pm
Hola Jorge!

Entiendo que:

Código ActionScript :

videobackground_mc.myPlay(arg); 


Llama a myPlay:

Código ActionScript :

function myPlay(vid) { 
   vidPlaying = true; 
   playState(); 
   ns.play(vid); 
} 


No pasaria por:

Código ActionScript :

ns.onStatus = function(info) { 
   if (info.code == "NetStream.Play.Stop") { 
      ns.seek(0); 
      ns.pause(true); 
   } 
   //trace(info.code); 
}; 


Si pongo:

Código ActionScript :

function myPlay(vid) { 
   vidPlaying = true; 
   playState(); 
   ns.pause(vid); 
   //ns.play(vid); 
} 

Direcatamente no reproduce el flv.

Nose como poder evitar el loop y que reproduzca una sola vez el video.

Gracias Jorge!

Por T1000

Claber

121 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 09 Ago 2009 05:35 am
Lo logre!

Código ActionScript :

var nc:NetConnection = new NetConnection(); 
nc.connect(null); 
var ns:NetStream = new NetStream(nc); 
ns.setBufferTime(5); 
video_mc.smoothing = false; //<---------- FALSE
trans_btn.useHandCursor = false;


Gracias Jorge!

Cuando este listo el sitio le paso la url para que vean y opinen!

Por T1000

Claber

121 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 09 Ago 2009 04:17 pm
¿Por cambiarlo un smoothing? Nop, seguro que no fue eso

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.