Bha cara, FMS é muito melhor.
Vantagens:
 - Facilidade de particionar o vídeo(Criar indices);
 - Facilidade para deslocar a qualquer ponto do vídeo;
 - Pode-se utillizar o componente vídeo(è muito mais aconselhável);
 - E um monte de outros.

No RTMP não use o componente VideoDisplay, ao invés utilize o componente
Video.
     *Eduardo Kraus*
Desenvolvedor
 [email protected]
http://blog.mxml.com.br


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
-~----------~----~----~----~------~----~------~--~---

Responder a