[TUTORIAL] Reproductor de video II - Foro Creativo

Ir a contenido


  • (2 Páginas)
  • +
  • 1
  • 2
  • No puedes empezar un nuevo tema
  • No puedes responder a este tema

[TUTORIAL] Reproductor de video II ...continuacion

#1 El usuario está offline   SAPINTO

  • FC
  • PipPipPip
  • Grupo: Miembros
  • Mensajes: 637
  • Registrado: 13-mayo 06
  • Location:another fucked up place
  • Sexo:Masculino
  • País:Stkitts nevis
  • Navegador:FireFox

Escrito 16 junio 2006 - 11:50

...continuacion de Reproductor de video I

ENHORABUENA! ha completado todos los elementos que se requieren para un reproductor de video. nuestra libreria deberia verse como esto:
Imagen IPB

ahora vamos a afinar algunos detalles.

vamos a alinear el play y pausa, en action uno desaparecera cuando el otro este presionado, si entendieron eso que dije, me lo explican tongue.gif
Imagen IPB

ahora vamos al layer textos, aqui crearemos un campo de texto dinamico llamado timevid_txt.
importante: es altamente recomendable situar el texto dinamico en coordenadas enteras, en este caso x=192, y=200, asi aseguramos la legibilidad del mismo (sino se revienta).
Imagen IPB

error comun: no se me ven los textos.
cuando es una tipografia poco comun, como la que use aqui, tenemos que hacer un embed, esto incluira los caracteres en el swf, pero para que no aumente el peso, selecciono los numeros y el simbolo :, ya que esta caja de texto dinamica esta destinada a mostrar el tiempo transcurrido (00:18 por ejemplo)
Imagen IPB



LISTO!, ahora les dejo el action, le puse comentarios para que se explique mejor, solo cabe destacar que la ruta del video es flv/The Distillers - Drain The Blood.flv, ya que el flv esta dentro de la carpeta flv, esto puede funcionar si le indicamos la ruta (por ejemplo: http://www.tallerweb...utorial/flv/The Distillers - Drain The Blood.flv)

CÓDIGO
//coneccion del video
var nc:NetConnection = new NetConnection();
nc.connect(null);

var ns:NetStream = new NetStream(nc);

miVideo.attachVideo(ns);

//carga el video de la carpeta flv, tambien puede ser del servidor, en ese caso, colocar ruta
ns.play("flv/The Distillers - Drain The Blood.flv");
//este es el tiempo del buffer en segundos
ns.setBufferTime(10);

//mensaje cargando video dentro del mc bufferclip
ns.onStatus = function(info) {
if(info.code == "NetStream.Buffer.Full") {
bufferclip._visible = false;
}else{
bufferclip._visible = true;
}

}


//para el tiempo transcurrido del video

var time_interval:Number = setInterval(checkTime, 0, ns);
function checkTime(mi_ns:NetStream) {
var ns_seconds:Number = mi_ns.time;
var minutes:Number = Math.floor(ns_seconds/60);
var seconds = Math.floor(ns_seconds%60);
if (seconds<10) {
seconds = "0" + seconds;
}
timevid_txt.text = "0" + minutes + ":" + seconds;
}
//botones
_root.createEmptyMovieClip("vSound",_root.getNextHighestDepth());
vSound.attachAudio(ns);

var so:Sound = new Sound(vSound);

so.setVolume(100);

mute.onRollOver = function() {
    if(so.getVolume()== 100) {
        this.gotoAndStop("onOver");
    }
    else {
        this.gotoAndStop("muteOver");
    }
}

mute.onRollOut = function() {
    if(so.getVolume()== 100) {
        this.gotoAndStop("on");
    }
    else {
        this.gotoAndStop("mute");
    }
}

mute.onRelease = function() {
    if(so.getVolume()== 100) {
        so.setVolume(0);
        this.gotoAndStop("muteOver");
    }
    else {
        so.setVolume(100);
        this.gotoAndStop("onOver");
    }
}

playButton._visible= false;
playButton.onPress = function() {
    ns.pause();
    this._visible= false;
    pauseButton._visible= true;
}
pauseButton.onPress = function() {
    ns.pause();
    this._visible= false;
    playButton._visible= true;
}

//barra de desplazamiento
this.createEmptyMovieClip("vFrame",this.getNextHighestDepth());
vFrame.onEnterFrame = videoStatus;

var amountLoaded:Number;
var duration:Number;

ns["onMetaData"] = function(obj) {
    duration = obj.duration;
}

function videoStatus() {
    amountLoaded = ns.bytesLoaded / ns.bytesTotal;
    barra.progreso._width = amountLoaded * 140;
    barra.scrub._x = ns.time / duration * 140;
}

var scrubInterval;

barra.scrub.onPress = function() {
    vFrame.onEnterFrame = scrubit;
    this.startDrag(false,0,this._y,140,this._y);
}

barra.scrub.onRelease = barra.scrub.onReleaseOutside = function() {
    vFrame.onEnterFrame = videoStatus;
    this.stopDrag();
}

function scrubit() {
    ns.seek(Math.floor((barra.scrub._x/140)*duration));
}

//por ultimo el menu
var elMenu:ContextMenu = new ContextMenu();
elMenu.hideBuiltInItems();
_root.menu = elMenu;

var item1:ContextMenuItem = new ContextMenuItem("::::: Control de video :::::",trace);
elMenu.customItems[0] = item1;

var item2:ContextMenuItem = new ContextMenuItem("Play / Pause",pauseIt,true);
elMenu.customItems[1] = item2;

var item3:ContextMenuItem = new ContextMenuItem("Replay Video",restartIt);
elMenu.customItems[2] = item3;

var item4:ContextMenuItem = new ContextMenuItem("video player by SAPINTO",trace,true);
elMenu.customItems[3] = item4;

function pauseIt() {
    ns.pause();
    if(pauseButton._visible = false){
    playButton._visible= true;
    }else{
        playButton._visible= false;
    }
}



function restartIt() {
    ns.seek(0);
}



----------EDITO-----------

con el fabuloso tag de flash! bien quique por eso 26_1_121vale.gif
EJEMPLO:


FLA: http://www.tallerweb...eo_tutorial.fla

pd: haganle click derecho al ejemplo 26_1_121vale.gif

Este tema ha sido editado por elQuique: 15 febrero 2008 - 02:41

Imagen IPB
0


  • (2 Páginas)
  • +
  • 1
  • 2
  • No puedes empezar un nuevo tema
  • No puedes responder a este tema

Otras respuestas a este tema

#21 El usuario está offline   monito73

  • Reciente
  • Grupo: Miembros
  • Mensajes: 2
  • Registrado: 22-julio 10
  • Gender:Male
  • Sexo:Masculino
  • País:Argentina
  • Navegador:FireFox

Escrito 22 julio 2010 - 01:55

Hola me gusto mucho el tutorial sapinto pero me gustaria como se podria hacer
un control de volumen que se peuda deslizar sobre la barra para poder subir y bajar el volumen.

PD:Hice todo lo del tuto pero no se reproduce el video y el sonido si.

PD:Me gustaria que me contesten Gracias de antemano.
0

#22 El usuario está offline   monito73

  • Reciente
  • Grupo: Miembros
  • Mensajes: 2
  • Registrado: 22-julio 10
  • Gender:Male
  • Sexo:Masculino
  • País:Argentina
  • Navegador:FireFox

Escrito 03 agosto 2010 - 06:35

No me funciona la barra de desplazamiento alguien sabe lo que pasa? y ni el tiempo

------- tiempo del video---------

my_stream.onMetaData = function(infoObject:Object) {
total = infoObject.duration;
};
timevid_txt.text = seg2min(my_ns.time);
duracion.text = seg2min(total);
//Funcion seg2min
function seg2min(num:Number) {
var min:Number = Math.floor(num/60);
var seg = Math.floor(num%60);
if (seg<10) {
seg = "0"+seg;
}
return min+":"+seg;
}


-------------- barra de desplazamiento---------

this.createEmptyMovieClip("vFrame",this.getNextHighestDepth());
vFrame.onEnterFrame = videoStatus;

var amountLoaded:Number;
var duration:Number;

ns["onMetaData"] = function(obj) {
duration = obj.duration;
}

function videoStatus() {
amountLoaded = ns.bytesLoaded / ns.bytesTotal;
barra.progreso._width = amountLoaded * 140;
barra.scrub._x = ns.time / duration * 140;
}

var scrubInterval;

barra.scrub.onPress = function() {
vFrame.onEnterFrame = scrubit;
this.startDrag(false,0,this._y,140,this._y);
}

barra.scrub.onRelease = barra.scrub.onReleaseOutside = function() {
vFrame.onEnterFrame = videoStatus;
this.stopDrag();
}

function scrubit() {
ns.seek(Math.floor((barra.scrub._x/140)*duration));
}
0

#23 El usuario está offline   videos

  • Reciente
  • Grupo: Miembros
  • Mensajes: 5
  • Registrado: 16-octubre 12
  • Sexo:Masculino
  • Navegador:FireFox

Escrito 18 febrero 2013 - 06:17

Muy buen aporte, gracias.








videos corporativos
0

  • (2 Páginas)
  • +
  • 1
  • 2
  • No puedes empezar un nuevo tema
  • No puedes responder a este tema




Sitios Amigos: Tutoriales gratis | GuiaHosting | Foros de ComunidadHosting | Unidominios |