Ir para conteúdo

POWERED BY:

Arquivado

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

Renato CNT

[Resolvido] Player de Vídeo em Flash

Recommended Posts

Bom... Boa Tarde Galera, é o seguinte... sou iniciante em flash, e conheço poucas coisas, estou desenvolvendo um player de vídeo totalmente personalisado, consegui fazer a maioria das funções funcionarem, mas estou apanhando na hora de fazer o botão play funcionar. o Botão Mute, como a barra de volume é totalmente independente tentei colocar para o botão mute retornar o volume para a mesma posição, porém isso não acontece, nem mesmo o audio se altera. Detalhe, a barra de progresso ainda não coloquei o carregamento, inclusive gostaria de uma ajuda, pois essa coloquei em um mesmo MC porem em layers diferentes, segue link do player e de um vídeo demonstração para eventuais visualizações:

 

 

www.teste.naweb.ws/teste/player.fla

www.teste.naweb.ws/teste/video1.flv

 

 

 


//configuração do palco...
Stage.align = "MC";
Stage.scaleMode = "noScale";
fscommand("allowscale", "false");
fscommand("fullscreen", "false");
_quality = "BEST";

//variáveis
var visualizador:Video;
var videoAtual:String = null;
var tempoAtual:Number = 0;
var isPlay:Boolean = false;
//botoes e mcs do player...
var somVideo:Sound;
var volumeatual:Number;
var vol_1:MovieClip;
var vol_2:MovieClip;
var vol_3:MovieClip;
var vol_4:MovieClip;
var vol_5:MovieClip;
var vol_6:MovieClip;
var vol_7:MovieClip;
var btn_play_pause:MovieClip;
var btn_stop:MovieClip;
//som para o controle do volume do player...
var somVideo:Sound = new Sound();
//criando conexao do stream de video...
var netConVideo:NetConnection = new NetConnection();
netConVideo.connect(null);
//criando stream para ser usado na conexao...
var netStmVideo:NetStream = new NetStream(netConVideo);
//um pequeno buffer antes do filme começar...
netStmVideo.setBufferTime(3);
//objeto monitor de eventos do video...
netStmVideo.onStatus = function(info):Void
{
//este if server para verificar se o filme ja acabou, rebobinando o mesmo...
if(info.code == "NetStream.Buffer.Flush"){
netStmVideo.play(videoAtual);
stopVideo();
}
}
//adicionando o stream ao nosso display no palco...
visualizador.attachVideo(netStmVideo);
 volumeatual = somVideo.getVolume();
 switch(volumeatual){
 case 14 : vol_1.gotoAndStop(2); vol_2.gotoAndStop(1); vol_3.gotoAndStop(1); vol_4.gotoAndStop(1); vol_5.gotoAndStop(1); vol_6.gotoAndStop(1); vol_7.gotoAndStop(1); somVideo.setVolume(14);
 case 28 : vol_1.gotoAndStop(2); vol_2.gotoAndStop(2); vol_3.gotoAndStop(1); vol_4.gotoAndStop(1); vol_5.gotoAndStop(1); vol_6.gotoAndStop(1); vol_7.gotoAndStop(1); somVideo.setVolume(28);
 case 42 : vol_1.gotoAndStop(2); vol_2.gotoAndStop(2); vol_3.gotoAndStop(2); vol_4.gotoAndStop(1); vol_5.gotoAndStop(1); vol_6.gotoAndStop(1); vol_7.gotoAndStop(1); somVideo.setVolume(42);
 case 50 : vol_1.gotoAndStop(2); vol_2.gotoAndStop(2); vol_3.gotoAndStop(2); vol_4.gotoAndStop(2); vol_5.gotoAndStop(1); vol_6.gotoAndStop(1); vol_7.gotoAndStop(1); somVideo.setVolume(50);
 case 74 : vol_1.gotoAndStop(2); vol_2.gotoAndStop(2); vol_3.gotoAndStop(2); vol_4.gotoAndStop(2); vol_5.gotoAndStop(2); vol_6.gotoAndStop(1); vol_7.gotoAndStop(1); somVideo.setVolume(74);
 case 88 : vol_1.gotoAndStop(2); vol_2.gotoAndStop(2); vol_3.gotoAndStop(2); vol_4.gotoAndStop(2); vol_5.gotoAndStop(2); vol_6.gotoAndStop(2); vol_7.gotoAndStop(1); somVideo.setVolume(88);
 case 100 : vol_1.gotoAndStop(2); vol_2.gotoAndStop(2); vol_3.gotoAndStop(2); vol_4.gotoAndStop(2); vol_5.gotoAndStop(2); vol_6.gotoAndStop(2); vol_7.gotoAndStop(2); somVideo.setVolume(100);
 }

//função para setar o video a ser carregado e tocado
function setVideo(src:String):Void
{
//Evitar o recarregamento
if(videoAtual != src){
netStmVideo.play(src);
//salva numa var, o video atual para posterior verificação
videoAtual = src;
} else {
//neste caso o video atual e o mesmo do comando, assim só recomeça a tocar...
netStmVideo.seek(0);
}
//configurando player para que esteja tocando...
btn_play_pause.gotoAndStop(2);
isPlay = true;
}
//função responsável pelo Play/Pause do filme...
function PlayPause():Void
{
if (isPlay) {
//salva o tempo atual para posterior continuação ao apertar em play...
//esse menos 10 e para não haver corte e delay no tempo de apertar o botão...
tempoAtual = netStmVideo.time-10;
netStmVideo.pause(true);
isPlay = false;
} else {
//caso esteja parado continua a tocar da onde parou...
isPlay = true;
netStmVideo.pause(false);
}
}
var cntMenu:ContextMenu = new ContextMenu();
cntMenu.hideBuiltInItems(); _root.menu = cntMenu;
var item:ContextMenuItem = new ContextMenuItem("Criado por CNT Mídia", CNT);
cntMenu.customItems[0] = item;
function CNT() { getURL("http://www.cntmidia.com.br"); }


//função responsável pelo stop do filme...
function stopVideo():Void
{
//resetando o tempo atual caso esteja em pause...
tempoAtual = 0;
netStmVideo.seek(0);
netStmVideo.pause(true);
isPlay = false;
//joga o botão de play/pause para o frame do play...
btn_play_pause.gotoAndStop(1);
}
//setando ação dos botões...
btn_stop.onRelease = stopVideo;
btn_play_pause.onRelease = PlayPause;
//ativando a função PlayPause()...

btn_play_pause.onRelease = function() {
 if (pp == 1) {
 btn_play_pause.gotoAndStop(2);
 pp = 2;
 } else {
 btn_play_pause.gotoAndStop(1);
 pp = 1;
 }
};
//Volume...
btn_mute.onRelease = function() {
 if (pp == 1) {
 oldVolume = somVideo.getVolume();
 btn_mute.gotoAndStop(2);
 vol_1.gotoAndStop(1);
 vol_2.gotoAndStop(1);
 vol_3.gotoAndStop(1);
 vol_4.gotoAndStop(1);
 vol_5.gotoAndStop(1);
 vol_6.gotoAndStop(1);
 vol_7.gotoAndStop(1);
 somVideo.setVolume(0);
 pp = 2;
 } else {
 btn_mute.gotoAndStop(1);
 somVideo.setVolume(oldVolume);
 pp = 1;
 }
};
vol_1.onRelease = function() {
 vol_1.gotoAndStop(2);
 vol_2.gotoAndStop(1);
 vol_3.gotoAndStop(1);
 vol_4.gotoAndStop(1);
 vol_5.gotoAndStop(1);
 vol_6.gotoAndStop(1);
 vol_7.gotoAndStop(1);
 somVideo.setVolume(14);
};
vol_2.onRelease = function() {
 vol_1.gotoAndStop(2);
 vol_2.gotoAndStop(2);
 vol_3.gotoAndStop(1);
 vol_4.gotoAndStop(1);
 vol_5.gotoAndStop(1);
 vol_6.gotoAndStop(1);
 vol_7.gotoAndStop(1);
 somVideo.setVolume(28);
};
vol_3.onRelease = function() {
 vol_1.gotoAndStop(2);
 vol_2.gotoAndStop(2);
 vol_3.gotoAndStop(2);
 vol_4.gotoAndStop(1);
 vol_5.gotoAndStop(1);
 vol_6.gotoAndStop(1);
 vol_7.gotoAndStop(1);
 somVideo.setVolume(42);
};
vol_4.onRelease = function() {
 vol_1.gotoAndStop(2);
 vol_2.gotoAndStop(2);
 vol_3.gotoAndStop(2);
 vol_4.gotoAndStop(2);
 vol_5.gotoAndStop(1);
 vol_6.gotoAndStop(1);
 vol_7.gotoAndStop(1);
 somVideo.setVolume(50);
};
vol_5.onRelease = function() {
 vol_1.gotoAndStop(2);
 vol_2.gotoAndStop(2);
 vol_3.gotoAndStop(2);
 vol_4.gotoAndStop(2);
 vol_5.gotoAndStop(2);
 vol_6.gotoAndStop(1);
 vol_7.gotoAndStop(1);
 somVideo.setVolume(74);
};
vol_6.onRelease = function() {
 vol_1.gotoAndStop(2);
 vol_2.gotoAndStop(2);
 vol_3.gotoAndStop(2);
 vol_4.gotoAndStop(2);
 vol_5.gotoAndStop(2);
 vol_6.gotoAndStop(2);
 vol_7.gotoAndStop(1);
 somVideo.setVolume(88);
};
vol_7.onRelease = function() {
 vol_1.gotoAndStop(2);
 vol_2.gotoAndStop(2);
 vol_3.gotoAndStop(2);
 vol_4.gotoAndStop(2);
 vol_5.gotoAndStop(2);
 vol_6.gotoAndStop(2);
 vol_7.gotoAndStop(2);
 somVideo.setVolume(100);
};
//por fim damos load e play em nosso video...
setVideo("video1.flv");

 

Grato,

Renato Moura

CNT Mídia

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.