平滑播放FLV视频文件_Flash教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:用MovieClipLoader连续加载外部图片并进行控制
也不记得在那个高手的blog上看到过。学习过,这里有人问起那就拿来用一用了,(整理出来)代码如下:varselectedmc;varid=1;varNum=13;varmyML:MovieCli

一直觉得flash播放视频文件不是很理想,除需要转换常用的MPG、AVI为FLV的麻烦不说,单是播放FLV文件时那“马赛克”(实时是缩放播放时没有经过抗锯齿处理)很不舒适,曾经以为是编码的问题,下载了各类FLV的编码文件并把源文件为VCD的文件用各种码率压缩在flash中播放都显得很粗糙,没有单独用Window mediaplay全屏播放顺眼!
无意间在google video上看到一段视频在线播放感觉很好,无上述说的“马赛克”,可当下载在本地插入我的flash后马赛克出现了,很希奇,就仔细研究,原来google video的播放器有一个选项为"Smooth video"就是平滑视频的意思,反复点选“Smooth video”发现效果很明显。因对此很感爱好,试着破解google video的播放器没成功,搜索国内国外的网站没有提到这是怎么实现的,在某一网站有人猜想是用flash8新的滤镜BlurFilter实现,后就试着用BlurFilter做,做完后播放发现确实可以,但有一个问题跟google video player的不一样,就是在视频被放大得很大时,用BlurFilter影响速度,而google video player播放打开“Smooth video”不会影响播放速度。
最后在翻看flash8的帮助文档时无意间发现video本身就有一个属性“smoothing”,但此属性默认是false,所以视频在缩放时没抗锯齿(smooth平滑)处理,下面介绍用“smoothing”属性平滑播放视频的方法,用的是帮助文档中的一个例子:
1.新建flash文档(例800X600),在库中新建视频,拖到舞台上(放大为800X600),取名为:my_video
2.新建一按钮如“平滑视频”实例名为:smoothing_btn
3.在第一帧输入如下as: this.createTextField("smoothing_txt", this.getNextHighestDepth(), 0, 0, 100, 22);
smoothing_txt.autoSize = true;
var my_nc:NetConnection = new NetConnection();
my_nc.connect(null);
var my_ns:NetStream = new NetStream(my_nc);
my_video.attachVideo(my_ns);
my_ns.play("test1.flv");
my_ns.onStatus = function(infoObject:Object) {
updateSmoothing();
};
smoothing_btn.onRelease = function() {
my_video.smoothing = !my_video.smoothing;
updateSmoothing();
};
function updateSmoothing():Void {
smoothing_txt.text = "smoothing = " my_video.smoothing;
}

4.保存文档

5.测试影片(当然文档的相同目录下得有test1.flv文件)

6.你可反复按“平滑视频”的按钮比较效果。

小结:A为什么这么有用的属性在讲解“动态播放FLV文件”的任何文档和书中都没有?B以后碰到问题先搜索帮助文档免走弯路C若有不对请高手同行多指教

源程序下载:
test_smooth_video.rar

分享:Flash MX 2004通过鼠标把位图矢量化
在此教程中,我将向你展示假如将AudioTT车在flashmx2004通过鼠标来将它矢量化,虽然这里面用的是flashmx2004,但它同样适合于其的flash版本。在这里绘图板是不

来源:闪吧//所属分类:Flash教程/更新时间:2008-03-05
相关Flash教程