Saudações....
Estou desenvolvendo um cd-room, que contem 4 áreas...
Bom tenho um swf principal com um menu de 4 itens ao clicar em faço um loadmovie para o o item especificado, assim cada área tem seu swf, que é carregado no principal, em um dos itens o swf contem um componente MediaPlayback que carrega um video flv, quando clico no menu do swf principal para carregar o swf que contem o video,da primeira vez o video passa sem problemas, quando passo para outro item e voltou para o que contem o video o mesmo não passa. (antes de carregar cada swf, exite um unloadmovie, portanto creio que esse não é o problema, tanto que o swf com video é carregado mas fica a janela do MediaPlayback sem que o video seja carregado)
Algum solução?
Desde já agradeço.

Problemas Com Corregamento De Video
Started By Feänor, 29/08/2005, 17:44
7 replies to this topic
#1
Posted 29/08/2005, 17:44
#2
Posted 29/08/2005, 18:01
E ai cara beleza bom vou colocar aqui um tutorial interessante que vc poderar tirar algumas coisas.
Galeria dinâmica de vídeos
Autor: Maxwell Dayvson
Nessa matéria irei mostrar como Vamos criar uma galeria de videos com dados dinâmicos via XML. Também teremos uma playlist para que o usuário adicione os videos favoritos dele, dnde as informações da playlist serão salvas num SharedObject.
O primeiro passo é adicionar ao stage do flash, os componentes: Tree, MediaDisplay, Button e DataGrid. Agora atribua o instance name de cada componente como mostra na imagem abaixo.
Tree - Instance Name lista_tr
MediaDisplay - Instance Name video_mp
DataGrid - Instance Name playlist_dg
Button - adicionar_bt e remover_bt (lembrando que são dois componentes Button)
E por fim, crie um TextField com o Instance Name de pl_txt.
Feito isso, vamos ao código. Todos os comentários estão feitos dentro dele.

Para baixar os codigos deste tuto clique aqui
Espero que te ajude
Um abraço,
Patrique André
Galeria dinâmica de vídeos
Autor: Maxwell Dayvson
Nessa matéria irei mostrar como Vamos criar uma galeria de videos com dados dinâmicos via XML. Também teremos uma playlist para que o usuário adicione os videos favoritos dele, dnde as informações da playlist serão salvas num SharedObject.
O primeiro passo é adicionar ao stage do flash, os componentes: Tree, MediaDisplay, Button e DataGrid. Agora atribua o instance name de cada componente como mostra na imagem abaixo.
Tree - Instance Name lista_tr
MediaDisplay - Instance Name video_mp
DataGrid - Instance Name playlist_dg
Button - adicionar_bt e remover_bt (lembrando que são dois componentes Button)
E por fim, crie um TextField com o Instance Name de pl_txt.
Feito isso, vamos ao código. Todos os comentários estão feitos dentro dele.

/* Importe as classes List, Button, MediaPlayback e Tree, essas são referentes aos componentes que serão utilizados nesse exemplo. Fazendo isso quando for atribuindo uma variável do tipo Button por exemplo, o codehint será exibido listando todos os métodos do componennte */ import mx.controls.List; import mx.controls.Button; import mx.controls.Tree; import mx.controls.MediaPlayback; //Variável addV é do tipo Button, e vamos atribuir a mesma, o instance name do componente Button adicionar. var addV:Button = adicionar_bt; //Variável remV é do tipo Button, e vamos atribuir a mesma, o instance name do componente Button remover. var remV:Button = remover_bt; //Variável pl é do tipo Tree, e vamos atribuir a mesma, o instance name do componente Tree. var lista:Tree = lista_tr; //Variável video é do tipo MediaPlayback, e vamos atribuir a mesma, o instance name do componente MediaDisplay. var video:MediaPlayback = video_mp; //Defina o sharedObject, chamando ele a partir do método getLocal, o arquivo nesse caso ainda não é criado só quando for executado o método flush para gravar alguma coisa nele. Caso o mesmo já exista, é possível acessar os valores contidos nele. Assim como excluir, adicionar ou alterar. //Nesse sharedObject, terá as informações da playlist. var playlist:SharedObject = SharedObject.getLocal("videogaleria"); //Objeto simples, que será usado para guardar as informações do último video selecionado no componente Tree var videoAtual:Object ={}; //Objeto list, será usado como um listener para o componente Tree var list:Object = {}; //A variável galeria é do tipo XML e irá receber uma instância da classe XML. var galeria:XML = new XML(); //Atruibua a propriedade ignoreWhite da classe XML o valor true. Para ignorar espaços existentes no XML. galeria.ignoreWhite = true; //Execute o método load passando como argumento a URL do arquivo XML que será carregado. galeria.load("galeria.xml"); //Na condicional if abaixo, use a propriedade data do sharedObject, para verificar se lista é undefined; if(playlist.data.lista == undefined){ //Caso seja, defina contatos como sendo um array playlist.data.lista = []; //O método flush, é responsável por gravar no sharedObject as informações que foram enviadas para a propriedade data; playlist.flush(); }; /*Evento onLoad da classe XML é executado quando os dados são carregados, ou seja, a partir desse momento pode-se usar o conteúdo existente no XML.*/ galeria.onLoad = function():Void{ //Atribuindo a propriedade dataProvider do componente Tree (lista_tr) os nodes existentes no XML lista.dataProvider = this.firstChild; }; //Desabilitando os componentes Button, de remover e adcionar. addV.enabled = remV.enabled = false; //Definindo o evento change do componente Tree (lista_tr) o evento ocorre, na troca de seleção de um item para o outro list.change = function(item:Object):Void{ //Variável que receber um objeto com as propriedades do item selecionado no componente Tree var sel:Object = item.target.selectedItem.attributes; //Zerando as informações do videoAtual, para receber as novas informações videoAtual ={}; //A condificional abaixo verifica se a propriedade url do item selecionado é diferente de undefined, com isso o play no video é iniciado e o objeto videoAtual, recebe os valores correspondentes ao video que está sendo exibido. if (sel.url != undefined) { video.contentPath = ""; //Habilitando o componente de adicionar e desabilitando o componente de remover remV.enabled = !(addV.enabled = true); //O método setMedia, recebe como argumento a url do arquivo que será carregado. video.contentPath =sel.url; //Executando o método play, para iniciar o video selecionado /* Atribuindo ao objeto videoAtual, três propriedades que são elas: 1º) URL - Vai receber a url do video que será carregado; 2º) INFOS - Vai receber informações referentes ao video inserido 3º) TITULO - Vai receber o titulo do video adicionado */ videoAtual.URL = sel.url; videoAtual.INFOS = sel.info; videoAtual.TITULO = sel.label; }; /*Bom, por padrão, o menu apenas abre ou fecha seus subitens clicando na seta do lado esquerdo. Irei mudar isso, quando o menu for clicado mesmo fora da setinha, ele abra seus subitens. Para tanto, iremos criar mais uma condição if averiguando se o item selecionando possui subitens. Se verdadeiro ele executará o método setIsOpen do componente Tree que possui quatro parâmetros. São eles:node, open, animate, fireEvent. node --> neste parâmetro será informado o item que deverá ser aberto. Para isso usamos a propriedade selectedItem para informar que item deverá ser aberto. open --> neste parâmetro será informado um valor Boolean indicado se o item irá abrir (true) ou fechar(false), para tanto use o método getIsOpen que avalia se o mesmo item está aberto ou fechado (o método getIsOpen possui um único parâmetro que é o node). Ex: Se estiver aberto o valor retornado será true, então use o not logic (!) para converter o valor em false, fechando o menu. animate --> Valor Boolean que indica se ocorrerá animação no ato de abrir ou fechar o menu. fireEvent --> É o parâmetro que irá receber o evento que irá acionar o método setIsOpen. O fireEvent (evento de disparo) irá receber o valor "this" que indica o evento change do componente por estar dentro do mesmo. */ if (sel.subitens){ item.target.setIsOpen(item.target.selectedItem, !item.target.getIsOpen(item.target.selectedItem), true, this); }; }; //Definindo o evento change do componente DataGrid (playlist_dg) o evento ocorre, quando um item for selecionado. playlist_dg.changeHandler = function():Void{ //Habilitando o componente de remover e desabilitando o componente de adicionar addV.enabled = !(remV.enabled = true); //A propriedade contentPath vai receber a URL do arquivo que será carregado, aqui estamos zerado o valor do video carregado, afim de carregar um próximo. video_mp.contentPath = '' //A propriedade contentPath vai receber a URL do arquivo que será carregado video_mp.contentPath = this.selectedItem.URL; }; //Defina o evento clickHandler do componente Button adicionar_bt. Esse evento é executado, quando o componente é clicado addV.clickHandler = function(){ //Executando a função addPlayList, para adicionar o item selecionado na playlist; addPlayList(); }; //Defina o evento clickHandler do componente Button remover_bt. Esse evento é executado, quando o componente é clicado remV.clickHandler = function(){ //Executando a função removeSelectedItem, para remover o item selecionado da playlist; removeSelectedItem(); }; //O Evento completo do MediaDilpay ocorre quando o video, terminar sua exibição, o que vamos fazer é pra quando o video que estiver sendo //exibido terminar, ele passe para o video seguinte. list.complete = function(){ //Verifica se o item selecionado do DataGrid é o útimo, caso seja ele selecionada o primeiro item if((playlist_dg.selectedIndex+1)>=playlist_dg.length){ //Selecionando o primeiro item playlist_dg.selectedIndex = 0; }else{ //Selecionando o próximo item playlist_dg.selectedIndex = playlist_dg.selectedIndex + 1; }; //Execuando o evento changeHandler do DataGrid; playlist_dg.changeHandler(); }; //Função responsável por adicionar o item selecionado, na playlist function addPlayList(){ //Usando o método unshift da classe Array, para adicionar o video atual sempre no primeiro índice do array. playlist.data.lista.unshift(videoAtual); //Use o método flush para gravar no sharedObject a alteração feita. playlist.flush(); //Executando a função de atualizaPlayList atualizaPlayList(); }; //Função responsável por atualizar a playlist a cada exclusão ou inclusão de itens na mesma. function atualizaPlayList(){ //Atribuindo a propriedade text do TextField, o resultado da quantidade de videos existentes na playlist pl_txt.text = 'Qtd videos na PLAYLIST: '+ playlist.data.lista.length; //Atribuindo a propriedade dataProvider, do componente DataGrid, o array de objetos contidos no sharedObject playlist_dg.dataProvider = playlist.data.lista; }; //Função responsável por remover da playlist o item selecionado no componente DataGrid; function removeSelectedItem(){ /*Use o método slice, passando como argumento: A propriedade selecteIndex do DataGrid, Voltando ao método splice, esse método é responsável por adicionar ou remover itens do array e modificar o mesmo, o segundo argumento é a quantidade de itens, que será retirado a partir da posição informada no primeiro argumento*/ playlist.data.lista.splice(playlist_dg.selectedIndex,1); //Use o método flush para gravar no sharedObject a alteração feita. playlist.flush(); //Setando a propriedade enabled do componente Button remover_bt, como false, deixando desabilitado remV.enabled = false; //Executando a função atualizaPlayList, para atualizar a playlist. atualizaPlayList(); }; //Executando a função atualizaPlayList, pois caso exista algum video na playlist adicionado anteriormente, ele será exibido. atualizaPlayList(); video.addEventListener("complete",list); lista.addEventListener("change", list); /*Abaixo use o método setStyle, para alterar os estilos do seu componente, primeiro alterei o themeColor, em seguida estou atribuindo uma openEasing, que vai receber uma classe Tween, para a animação escolhi a Bounce. */ lista.setStyle("themeColor", "haloBlue"); lista.setStyle("openEasing",mx.transitions.easing.Bounce.easeOut); lista.setStyle("openDuration", 600);
Para baixar os codigos deste tuto clique aqui
Espero que te ajude
Um abraço,
Patrique André
#3
Posted 29/08/2005, 18:40
já tentou transformar o vídeo num movieclip?
ou seja, inserir o tal componente num movieclip, q vai tar dentro desse swf q é carregado?
tenta aê.. quem sabe num dá certo...
ou seja, inserir o tal componente num movieclip, q vai tar dentro desse swf q é carregado?
tenta aê.. quem sabe num dá certo...
Skateboardzzzzzzz 4eva!!!!
#4
Posted 30/08/2005, 12:21
Patrique...
Não utilizei o tutorial que envio neste projeto, pois não era bem issoq ue eu precisava, as mesmo assim foi muito util obrigado.
Skatista...
tentei fazer o lance do movieclip e não deu certo, mas mesmo assim obrigado.
Bom pra quem tiver um problema parecido com o que descrevi neste topico, a unica soluçaõ que achei é deixar o MediaPlayBack no swf principal, com o loadmovie ele não exibi o filme na segunda chamada....
Se alguém souber solucionar o problema de outra forma, a resposta seria muito bem vinda
Feänor
Não utilizei o tutorial que envio neste projeto, pois não era bem issoq ue eu precisava, as mesmo assim foi muito util obrigado.
Skatista...
tentei fazer o lance do movieclip e não deu certo, mas mesmo assim obrigado.
Bom pra quem tiver um problema parecido com o que descrevi neste topico, a unica soluçaõ que achei é deixar o MediaPlayBack no swf principal, com o loadmovie ele não exibi o filme na segunda chamada....
Se alguém souber solucionar o problema de outra forma, a resposta seria muito bem vinda
Feänor
#5
Posted 09/10/2017, 18:38
Amoxicillin Penicillin Synkapton Kaufen viagra Equivalencia Cialis Viagra Side Effects Keflex Second Day
Viagra Sold In The United States Clomid Usa Shippments Online Viagra Umsatz Pfizer viagra online prescription Cytotec Without Prescription
Viagra Sold In The United States Clomid Usa Shippments Online Viagra Umsatz Pfizer viagra online prescription Cytotec Without Prescription
#6
Posted 25/10/2017, 01:02
Baclofene Dose Maximale viagra Power Pill 100
Ceftin Vs Amoxicillin Cialis Professional 20 Mg Germany viagra Where To Order Pyridium Mastercard Accepted Levitra Generic India Acquisto Cialis 5 Mg
Super Active Viagra Online Viagra Online France Buying Provera Online viagra online pharmacy Strep Throat Amoxicillin Dosage Viagra Without A Doctor Where To Buy Periactin Pills
Ceftin Vs Amoxicillin Cialis Professional 20 Mg Germany viagra Where To Order Pyridium Mastercard Accepted Levitra Generic India Acquisto Cialis 5 Mg
Super Active Viagra Online Viagra Online France Buying Provera Online viagra online pharmacy Strep Throat Amoxicillin Dosage Viagra Without A Doctor Where To Buy Periactin Pills
#7
Posted 05/11/2017, 18:34
Direct Online Stendra Avana Internet Medication Shop Cheapeast Oklahoma Kamagra Vente En France Cialis Generique Tadalafil Comprimes viagra Generic Quality And Viagra
Cheapest Plavix Online Canadiana Pharmacy Cialis Soft online pharmacy Where Can I Buy Viagra In Buy Metformin Medicine
Zithromax Syphilis Treatment cialis online Rx World Manatoba
Cheapest Plavix Online Canadiana Pharmacy Cialis Soft online pharmacy Where Can I Buy Viagra In Buy Metformin Medicine
Zithromax Syphilis Treatment cialis online Rx World Manatoba
#8
Posted 28/11/2017, 18:50
Generic Viagra From Uk Cialis Levitra Comment Viagra buy viagra online Viagra A Contrareembolso Mrsa Zithromax Amoxicillin And Doseage
Discreet Shipping For Viagra viagra online Precio De Priligy En Espana
247 Drugs Shop Reviews cialis price Viagra Vente Libre Andorre Sildenafil 100
Discreet Shipping For Viagra viagra online Precio De Priligy En Espana
247 Drugs Shop Reviews cialis price Viagra Vente Libre Andorre Sildenafil 100
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)