2

如何在 Flash 中加载和播放 .avi 或 .mpg4?那可能吗 ?

-> 此类可以播放 .flv 和 .mp4 .. 但对于 .avi 会显示错误“错误 #2044: Unhandled NetStatusEvent:.level=error, code=NetStream.Play.StreamNotFound”

package src {     
    import flash.display.Sprite;     
    import flash.media.Video;     
    import flash.net.NetConnection;     
    import flash.net.NetStream;      
    import flash.events.Event;
    import flash.events.MouseEvent;

        public class vplayer extends Sprite{                 
            public var vid:Video = new Video(1920,1080);
            private var nc:NetConnection = new NetConnection();
            public var ns:NetStream;
            public var listener:Object = new Object();
            private var _duration:Number = 0; 

            public function vplayer():void{             
                addChild(vid);
                nc.connect(null);
                ns = new NetStream(nc);
                vid.attachNetStream(ns);
                listener.onMetaData = metaDataHandler;
                ns.client = listener;           
                //customClient.onCuePoint = cuePointHandler;
            }
            public function playVideo00(vv:String):void{

                ns.play(vv);
            }
            public function stopVideo00():void{
                ns.close();
            }
            /*public function cuePointHandler(infoObject:Object):void {
                trace("cuePoint");
            }*/
            public function metaDataHandler(infoObject:Object):void {
                _duration = infoObject["duration"];
                trace (" Time:  " + infoObject["duration"]);
            }
            public function get duration00():Number {     
                return _duration; 
            }
        } 
}

..有什么帮助吗?

4

3 回答 3

5

如果文件是流媒体服务器上的 MP4,则在进行 RTMP 调用时,您只需在视频文件名前加上“mp4:”即可。您需要确保仅将其添加到实际的视频文件中,而不是完整的 URL。

例子:

如果您的完整视频在,rtmp://domain.com/dir/myVideo.mp4那么您将myVideo.mp4在调用该play()函数时添加前缀。

ns.play("mp4:myVideo");

根据您的流媒体服务器的设置,您可能需要也可能不需要文件扩展名。

于 2012-11-19T20:50:53.800 回答
1

这个例子可以播放.mp4文件

于 2011-06-02T07:06:31.433 回答
1

文件扩展名实际上并不意味着那么多。AVI、QuickTime 等是容器格式,它们内部的音频和视频流格式(即编解码器)可能会有所不同。对于一些,容器格式也可能会有所不同。

维基百科上的Flash 视频文章很好地总结了在什么版本的 Flash Player 中可以播放的内容。

至于播放视频,您可以使用FLVPlayback制作自己的播放器,也可以使用FlowPlayer等通用播放器。

于 2011-06-02T14:45:29.617 回答