as3不能播放flv

bit_x 2010-07-03 12:09:14
flex下建立一个ActionScript项目,名字NewHello。本意要播放flv文件,可没有任何影像出现。项目大致目录结构如下

NewHello
---src
---(默认包)
---NewHello.as
---connectThis(包)
---Connect.as

第一做法:
NewHello.as

package
{
import connectThis.Connect;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;

public class NewHello extends Sprite
{
private var con:Connect;
public function NewHello()
{
con = new Connect();
}
}
}

Connect.as

package connectThis
{
import flash.display.DisplayObjectContainer;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.display.DisplayObjectContainer;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;

public class Connect extends Sprite//DisplayObjectContainer//MovieClip//
{
public function Connect()
{
//创建NetConnection对象
var myNc:NetConnection=new NetConnection();
myNc.connect(null);
//使用onMetaData函数,Flash用来寻找这个方法
var metaObject:Object=new Object();
metaObject.onMetaData=onMetaData;
//构造NetStream对象并且连接创建的myNc对象
var myNs:NetStream=new NetStream(myNc);
myNs.play("http://192.168.1.126/sample.flv");
//发送所有onMetaData调用到NetStream上
myNs.client=metaObject;
//创建video尺寸
var video:Video=new Video(160,120);
//加载Video到NetStream上去,添加到display列表
video.attachNetStream(myNs);
addChild(video);
}
private function onMetaData(data:Object):void {
//发送Flash需要的Metadata数据
}
}
}


本意是要播放绿色区域的文件http://192.168.1.126/sample.flv 但没有任何影像出现
注意:Connect继承DisplayObjectContainer或者MovieClip都无济于事

第二做法:
如果将两个文件的内容和到一起,只用NewHello.as文件,能顺利播放处flv,如下

package
{
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;

public class NewHello extends Sprite
{
public function NewHello()
{
var myNc:NetConnection=new NetConnection();
myNc.connect(null);
//使用onMetaData函数,Flash用来寻找这个方法
var metaObject:Object=new Object();
metaObject.onMetaData=onMetaData;
//构造NetStream对象并且连接创建的myNc对象
var myNs:NetStream=new NetStream(myNc);
myNs.play("http://192.168.1.126/sample.flv");
//发送所有onMetaData调用到NetStream上
myNs.client=metaObject;
//创建video尺寸
var video:Video=new Video(160,120);
//加载Video到NetStream上去,添加到display列表
video.attachNetStream(myNs);
addChild(video);
}

private function onMetaData(data:Object):void {
//发送Flash需要的Metadata数据
}

}
}


问:怎样做才能使第一种做法中用两个文件的能正常播放
...全文
266 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
gonglili77 2011-11-06
  • 打赏
  • 举报
回复
为什么播放不出来
nirenzhang 2010-07-07
  • 打赏
  • 举报
回复
con = new Connect();
addChild(con);

实例化组建后要追加到舞台上
nirenzhang 2010-07-07
  • 打赏
  • 举报
回复
package
{
import connectThis.Connect;
import flash.display.MovieClip;
import flash.display.Sprite;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;

public class NewHello extends Sprite
{
private var con:Connect;
public function NewHello()
{
con = new Connect();
addChild(con);
}
}
}
popfight 2010-07-06
  • 打赏
  • 举报
回复
你的Connect.as和newHello.as在同一级上,导入包的时候是import connectThis.Connect
bit_x 2010-07-03
  • 打赏
  • 举报
回复
不顶看不到。继续
bit_x 2010-07-03
  • 打赏
  • 举报
回复
为啥一个人都没有,自己顶
leemiki 2010-07-03
  • 打赏
  • 举报
回复
路过,播放这块不怎么清楚
帮顶,O(∩_∩)O哈哈~

4,328

社区成员

发帖
与我相关
我的任务
社区描述
多媒体/设计 Flex
社区管理员
  • Flex
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧