青岛设计网标志 搜艺招聘
   Guest:  登陆 | 注册 | 网站首页 | 论坛首页 | 我的贴子 | 修改资料 | 留言板 | | 论坛帮助  | 论坛首页  

  论坛首页   FLASH  平滑播放FLV视频文件

[公告]快到[搜艺招聘网]发布招聘信息 注册简历、发布自己作品! :)  
平滑播放FLV视频文件  
    yoguz

查看yoguz的博客


金钱: 18255
Level: 0
发帖数: 1564
最后登陆: 2019/10/24
注册时间: 2004/12/13


[鍜界値鍚冧粈涔堣嵂]姣忓ぉ娉2琚嬶紝鍧氭寔30澶╋紝鍜界値濂藉鍒
信息 | 留言 | 引用 | 回复 | 编辑 | 置顶 | 移动 | 删除

平滑播放FLV视频文件

一直觉得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

排卵期计算器 橙创意



2006/5/19
信息 | 留言 | 引用 | 回复 | 编辑 | 置顶 | 移动 | 删除


青岛设计网版权所有
本论坛言论纯属发表者个人意见