shumi 0 Denunciar post Postado Março 28, 2007 Fala galera beleza?Galera to com um desafio muito bom e muito dificil para resolver! hauhauhauaComo consigo carregar um video externo e uma legenda externa também?sendo que se o video parar para carregar a legenda pare também...Abraços e Obrigado! Compartilhar este post Link para o post Compartilhar em outros sites
shumi 0 Denunciar post Postado Março 29, 2007 Fala galera beleza? Bom estava tentando aqui fazer e deu certo quase tudo, descobri que tem um bug e não consigo resolver! :-( Vejam aqui está minha ActionScript //Aqui importamos a classe FLVPlayback do pacote video, dentro de mx, o pacote dos componentes da Adobeimport mx.video.FLVPlayback;//Declaramos o componente visual video como instância da classe FLVPlayback, para assim facilitar na ajuda de scriptvar video:FLVPlayback;//Associamos os componentes customizados (custom ui para o FLVPlayback) às propriedades do componente video, um detalhe interessante é que caso queiramos utilizar um MovieClip totalmente personalizado, criado a partir de um desenho qualquer para que seja utilizado como botão de play, pause, mute, stop e playPause, para o componente FLVPlayback, é só convertermos esse desenho para MovieClip e associarmos da mesma forma que fazemos abaixo, afinal esses componentes prontos são MovieClips comuns (exceção aos bar)video.playPauseButton = playPause_mc;video.stopButton = stop_mc;video.seekBar = seek_mc;video.volumeBar = volume_mc;//Criamos um objeto array de nome legendas, por hora está vaziovar legendas:Array = new Array();//Criamos um objeto xml, para utilizarmos as informações que se encontram dentro do arquivo legendas.xmlvar xml:XML = new XML();//Pedimos para ignorar os espaços em branco do xml (tabulações e quebras de linhas) para que ele não os considere como nósxml.ignoreWhite = true;//Lemos o arquivo legendas.xmlxml.load("legendas.xml");//Ao ler o xmlxml.onLoad = function():Void { //O array legendas captura todos os dados contidos no primeiro nó(<legendas>) legendas = this.firstChild.childNodes; //Enquanto existirem nós dentro de legendas, adicione ao video um cuePoint, onde o tempo será o atributo segundo, e o nome será a descrição desse cuePoint, o filho respectivo desse nó for (var i:Number = 0; i<legendas.length; i++) { video.addASCuePoint(legendas[i].attributes.segundo, legendas[i].firstChild.nodeValue); }};//Criamos uma função chamada onCuePoint que não retorna nadafunction onCuePoint(obj:Object):Void { //No campo de texto legendas_txt, apresentamos a informação nome, contida no video, através do método addASCuePoint(tempo, nome). legendas_txt.text = obj.info.name;}//Adicionamos ao video, no evento cuePoint a função onCuePoint que indica o que fazer ao encontrar cuePointsvideo.addEventListener("cuePoint", onCuePoint);e aqui meu XML <?xml version="1.0" encoding="utf-8"?><legendas><legenda segundo="1">No chão</legenda><legenda segundo="3">Se montando...</legenda><legenda segundo="5">Montou</legenda><legenda segundo="7">Começa a dançar</legenda></legendas>assim como está ta funfando certinho, mas quando no XML adiciono qualquer linha que tenha 2 digitos no "segundo" não aparece mais nada de texto! :-(exemplo se coloco a linha assim: <legenda segundo="10">Começa a dançar</legenda>Da pau! tem como vcs darem uma mão aqui, pois precisaria disso? Segue o zip com todos os arquivos caso queiram ver! Abraços e valeu!!!! Compartilhar este post Link para o post Compartilhar em outros sites
Eduardo =) 0 Denunciar post Postado Junho 25, 2007 Voce tem que fazer com que todos os numeros tenham 2 digitos. por exemplo.<?xml version="1.0" encoding="utf-8"?><legendas> <legenda segundo="02">Texto1. </legenda> <legenda segundo="07">Texto2. </legenda> <legenda segundo="09">Texto3. </legenda> <legenda segundo="11">Texto4. </legenda> </legendas> Compartilhar este post Link para o post Compartilhar em outros sites