Qual versao do FMS vc usa? 2009/3/2 Wescley <[email protected]>
> > Posso usar os dois, qual você aconselha. Você já viu alguma > documentação sobre as vantagens de usar um ou outro. > > Tenho tanto uma licença do FMS quanto posso usar HTTP. > > > On 28 fev, 22:22, Eduardo Kraus <[email protected]> wrote: > > Você esta usando RTMP ou HTTP? > > > > 2009/2/26 Wescley <[email protected]> > > > > > > > > > Fonte do video display > > > > > <mx:VideoDisplay volume="{volumeSliderConferencia.value}" > > > autoPlay="false" live="true" x="10" y="0" id="videoPlayerConferencia" > > > width="352" height="240" backgroundColor="#965252" > > > maintainAspectRatio="false" borderStyle="solid" borderThickness="6" > > > borderColor="#A9A4A4"/> > > > <mx:ApplicationControlBar width="352" > > > id="controlMenu" top="240" > > > left="10" fillAlphas="[1.0, 1.0]" fillColors="[#FDFBFB, #767474]" > > > themeColor="#000000" alpha="0.42" color="#050606"> > > > <mx:Button > > > id="confVideoPlayPauseButton" /> > > > <mx:Label text="status: > > > {videoPlayerConferencia.state}"/> > > > <mx:Spacer > width="100%"/> > > > <mx:Image width="16" height="16" > > > source="icones/ > > > VolumeNormalRed.png"/> > > > <mx:HSlider > > > id="volumeSliderConferencia" liveDragging="true" > > > value=".75" minimum="0" maximum="1" height="34" width="72"/> > > > </mx:ApplicationControlBar> > > > <mx:Canvas x="10" y="233" width="352" > > > height="9" alpha="1.0" > > > backgroundAlpha="1.0" backgroundColor="#A9A4A4" borderColor="#A9A4A4" > > > borderStyle="solid"> > > > </mx:Canvas> > > > <mx:HDividedBox left="370" right="10" > > > top="0" bottom="10"> > > > <mx:Panel layout="absolute" > > > title="Chat" width="80%" > > > height="100%" borderColor="#A9A4A4"> > > > <mx:TextArea > > > id="messageArea" wordWrap="true" editable="false" > > > enabled="true" left="0" right="0" bottom="41" top="0" > > > borderStyle="none"/> > > > <mx:TextInput left="4" > > > bottom="3" right="73" fontSize="12" > > > borderStyle="inset" id="sendMessageInput" text="Olá !"/> > > > <mx:Button > label="Enviar" > > > right="4" bottom="5" > > > id="confSendButton" click="sendMessage()"/> > > > </mx:Panel> > > > </mx:HDividedBox> > > > <mx:Panel layout="absolute" id="usuario" > > > title="Usuários" > > > width="352" left="10" top="293" bottom="10" borderColor="#A9A4A4"> > > > <mx:List id="usersList" > > > borderStyle="none" left="10" top="0" > > > bottom="0" right="0"/> > > > </mx:Panel> > > > > > // ActionScript file que controla a videodisplay > > > > > import flash.events.MouseEvent; > > > > > import mx.events.VideoEvent; > > > import mx.formatters.DateFormatter; > > > import mx.rpc.events.FaultEvent; > > > import mx.rpc.events.ResultEvent; > > > import mx.rpc.http.mxml.HTTPService; > > > > > private var videoLength:String; > > > private var start:Date; > > > private var timeDisplayFormatter:DateFormatter; > > > private var seekTo:Number; > > > > > private var playlist:XMLList; > > > private var playlistCursor:uint; > > > > > [Bindable] > > > private var videoFileTotalBytes:Number; > > > > > public function stopGaleria():void{ > > > if(myVideoDisplay.playing){ > > > myVideoDisplay.pause(); > > > } > > > > > } > > > public function startGaleria():void{ > > > videoFileTotalBytes = this.myVideoDisplay.bytesTotal; > > > start = new Date("1/1/2000"); > > > timeDisplayFormatter = new DateFormatter(); > > > > > this.myVideoDisplay.addEventListener(VideoEvent.READY, > videoReady); > > > this.myVideoDisplay.addEventListener(VideoEvent.COMPLETE, > > > videoComplete); > > > this.myVideoDisplay.addEventListener(VideoEvent.PLAYHEAD_UPDATE, > > > updateTimeDisplay); > > > > > this.btn_next.addEventListener(MouseEvent.CLICK, > > > playlistControlsHandler); > > > this.btn_previous.addEventListener(MouseEvent.CLICK, > > > playlistControlsHandler); > > > > btn_playToggle.addEventListener(MouseEvent.CLICK,togglePlayback); > > > btn_stopToggle.addEventListener(MouseEvent.CLICK,toogleStop); > > > > > loadPlaylist(); > > > } > > > > > private function playlistControlsHandler(event:MouseEvent):void{ > > > switch(event.currentTarget.label){ > > > case 'Next': > > > if(playlistCursor<playlist.length() -1){ > > > if(myVideoDisplay.playing){ > > > myVideoDisplay.pause(); > > > } > > > this.myVideoDisplay.playheadTime = 0; > > > playlistCursor ++; > > > playVideo(); > > > } > > > break; > > > case 'Prev': > > > if(playlistCursor - 1>=0){ > > > if(myVideoDisplay.playing){ > > > myVideoDisplay.pause(); > > > } > > > this.myVideoDisplay.playheadTime = 0; > > > playlistCursor --; > > > playVideo(); > > > } > > > break; > > > default: > > > break; > > > } > > > } > > > > > private function loadPlaylist():void{ > > > > > playlistCursor = 0; > > > var playlistService:HTTPService = new HTTPService(); > > > playlistService.url = "galeria/playlist.xml"; > > > playlistService.resultFormat = "xml"; > > > playlistService.showBusyCursor = true; > > > playlistService.addEventListener(ResultEvent.RESULT, > > > onPlaylistResult); > > > playlistService.addEventListener(FaultEvent.FAULT, onFault); > > > playlistService.send(); > > > } > > > > > private function onPlaylistResult(event:ResultEvent):void{ > > > var resultXML:XML = new XML(event.result); > > > playlist = new XMLList(resultXML.video); > > > playVideo(); > > > } > > > > > private function playVideo():void{ > > > this.myVideoDisplay.source= this.playlist[playlistcurso...@file; > > > } > > > > > private function onFault(event:FaultEvent):void{ > > > trace(event.fault); > > > } > > > private function toogleStop(event:MouseEvent):void{ > > > this.myVideoDisplay.stop(); > > > } > > > private function togglePlayback(event:MouseEvent):void{ > > > if(this.myVideoDisplay.playing){ > > > this.myVideoDisplay.pause(); > > > }else if(this.myVideoDisplay.source){ > > > this.myVideoDisplay.play(); > > > } > > > } > > > > > private function videoComplete(event:VideoEvent):void{ > > > if(this.playlistCursor< this.playlist.length() -1){ > > > this.myVideoDisplay.playheadTime = 0; > > > this.playlistCursor ++; > > > this.playVideo(); > > > } > > > } > > > > > private function videoReady(event:VideoEvent):void{ > > > timeDisplayFormatter.formatString = "J:NN:SS"; > > > var totalTime:Date = new Date(start.getTime() + > > > (this.myVideoDisplay.totalTime * 1000)); > > > this.videoLength = timeDisplayFormatter.format(totalTime); > > > } > > > > > private function updateTimeDisplay(event:VideoEvent):void{ > > > timeDisplayFormatter.formatString = "N:SS"; > > > var currentTime:Date = new Date(start.getTime()+ > (event.playheadTime > > > * 1000)); > > > tf_playtimeDisplay.text = > timeDisplayFormatter.format(currentTime) + > > > "/" + this.videoLength; > > > } > > > > > Ta ai, o fonte primeiro o mxml com o player, e abaixo o actionscript > > > que trata o player. > > > > > Alguns fatos interessantes. > > > > > Se eu limpo o cache do meu navegador, o sistema funciona direitinho. > > > Se eu rodo o sistema, algumas vezes ele da erro outras não, isto sem > > > eu mexer no codigo. > > > > > On 26 fev, 10:39, Chacal Army <[email protected]> wrote: > > > > tem como colocar seu fonte? > > > --~--~---------~--~----~------------~-------~--~----~ Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para [email protected] Para sair da lista, envie um email em branco para [email protected] Mais opções estão disponíveis em http://groups.google.com/group/flexdev -~----------~----~----~----~------~----~------~--~---
