Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Abimael Curi

Barra de progresso

Recommended Posts

Olá a todos. Esta é a segunda vez que venho pedir ajuda neste fórum...

 

Fiz um player de vídeo para um site interno aqui da região, e que por acaso, não consegui terminar, até porque actionscript não é muito bem o meu forte hehehe.

 

Os botões "Play/Pause", "stop", "mudo" e o "Volume" estão funcionando perfeitamente(ou quase) e agora falta aquelas barras de carregamento conforme o vídeo passa, e para poder passar o vídeo para frente, pois alguns são um tanto quando compridos...

 

na verdade não foi eu quem fiz o bendito do player, fui pesquisando na internet e fazendo tutoriais, até chegar no meu resultado, pois no flash só sei as regras básicas de programação, que são as mesmas em qualquer linguagem né?

 

Alguém sabe algum tutorial bacana para fazer isso? ou então poderia me dar uma luz? Agradeço desde já. (=

 

O que tenho para o player em si é isso:

 

#include "MovieClipController.as"
import VolumeControl;
stop();

Stage.align = "MC";
Stage.scaleMode = "noScale";
fscommand("allowscale", "false");
fscommand("fullscreen", "false");
_quality = "BEST";
var display:Video;
var videoAtual:String = null;
var tempoAtual:Number = 0;
var VolAtualMudo:Number = 0;
var isPlay:Boolean = false;
var mcVolumeControl:MovieClip;
var btPlayPause:MovieClip;
var btStop:MovieClip;
var somVideo:Sound = new Sound();
somVideo.setVolume(50);
var netConVideo:NetConnection = new NetConnection();
netConVideo.connect(null);
var netStmVideo:NetStream = new NetStream(netConVideo);
netStmVideo.setBufferTime(5);

var BarraContagem:mx.controls.ProgressBar;

netStmVideo.onStatus = function(info):Void{
	if (info.code == "NetStream.Buffer.Flush") {
		netStmVideo.play(videoAtual);
		total = int(netStmVideo.bytesTotal()/1024);
		carregado = int(netStmVideo.bytesLoaded()/1024);
		porcento = Math.floor((total/carregado)*100);
		BarraContagem.setProgress(porcento);
		stopVideo();
	}
};

function setVideo(src:String):Void {
	if (videoAtual != src) {
		netStmVideo.play(src);
		videoAtual = src;
	} else {
		netStmVideo.seek(0);
	}
	btPlayPause.gotoAndStop(2);
	isPlay = true;
}

function PlayPause():Void {
	if (isPlay) {
		tempoAtual = netStmVideo.time-30;
		netStmVideo.pause(true);
		isPlay = false;
	} else {
		isPlay = true;
		netStmVideo.pause(false);
	}
}
function stopVideo():Void {
	tempoAtual = 0;
	netStmVideo.seek(0);
	netStmVideo.pause(true);
	isPlay = false;
	btPlayPause.gotoAndStop(1);
}
btStop.onRelease = stopVideo;
btPlayPause.onRelease = function():Void  {
	if (isPlay && this._currentframe == 2) {
		this.gotoAndStop(1);
	} else {
		this.gotoAndStop(2);
	}
	PlayPause();
};
VolumeMudo.onRelease = function():Void  {
	if (Mudo && this._currentframe == 2) {
		this.gotoAndStop(1);
		somVideo.setVolume(50);
		Mudo = false;
	} else {
		Mudo = true;
		somVideo.setVolume(0);
		this.gotoAndStop(2);
	}
};
mcVolumeControl.setVolumeObject(somVideo);

var FF_var:String = new String();
FF_var = filme;

setVideo(FF_var);

o que eu gostaria de fazer é como no youtube sabe? que o vídeo está parando quando não carregou o suficiente, dá um tempo, e continua a passar, e se eu der stop, e play de novo ele não trava(pois mesmo parado ele continua carregando, gostaria de ver o quando carregou e poder mudar o tempo conforme clickar na barra entende? estou a duas semanas com o player no mesmo estado sem conseguir fazer a bendita barra de progresso.

 

...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.