用户名: 密码: 验证码: QQ--程序群:31736530 动画群:38836599
闪无忧
 
首 页 业界新闻 业界杂谈 Flash教程 Flash源码 Flash图书 Flash酷站 Flex & AIR 供求信息
   本栏目通告:   有意向写收费精品教程的朋友,请联系本站合作
当前位置 :首页>flash教程>Fms教程>列表

flv视频转换和flash播放的解决方案

[来源:闪客无忧 | 作者:佚名 | 时间:2008-04-04 | 点击:  | 收藏本文  【 】]
凌晨2点洗澡的时候,突然决定把flv的视频转换和在线播放的问题研究一下。于是在之后花了2小时进行Google,并在睡觉前初步试验成功。今天晚上对这些信息进行了一下整理,分享给大家。

youtube火起来以后,国内外跟进的一大把,不过技术和流程上没有任何突破,基本上就是服务器自动对用户上传的视频进行压缩,压成可以用flash在线播放的flv,缩小尺寸并降低码率。然后再用Flash制作一个播放器,可以根据参数在线播放指定的flv视频,当然有些还会加上水印和跳自己网站等功能。

转换工具可以选择ffmpeg和mencoder,这2个都是gnu项目,并且可以非常完美的在linux/Mac/Win32等平台下使用。不过ffmpeg支持的视频格式较少(不能很方便的支持rmvb,mov等,不过据说Google Video用的是这个),而mencoder则不能进行截图,所以可以考虑2者结合使用,mencoder负责转换,ffmpeg负责截图。

关于下载和安装,ffmpeg烦一点,官方网站上只提供了svn,需要自己编译。具体可以参考这篇文章,Windows还需要装MinGW来MSYS模拟linux环境,偷懒的话可以直接找个编译好的版本,不过功能可能会不全。

mencoder则很简单,本来就是mplayer的一部分,会装mplayer就成。注意把codecs都装全了


首先通过mencoder把普通视频转化为flv格式,命令如下

代码
mencoder test.avi -o test.flv -of lavf -oac mp3lame -lameopts abr:br=32:mode=3 -ovc lavc -lavcopts vcodec=flv:vbitrate=150:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -srate 22050 -lavfopts i_certify_that_my_video_stream_does_not_use_b_frames -vf scale=350:-3 -sws 2


mencoder 的参数超级复杂,视音频压缩本身又是一门非常高深的学问,本人略知皮毛,下面只对自己了解的一些参数做些说明,详细解释请看手册

引用
test.avi
输入文件路径,是Mplayer能支持的格式即可

-o test.flv
输出路径

-of lavf
输出格式 lavf表示libavcodec

-oac mp3lame
输出音频编码方式,lame是最好的mp3编码器

-lameopts abr:br=32:mode=3
lame的选项
abr代表平均码率,相对于cbr(固定码率)和vbr(可变码率,貌似不支持)
br就是音频的码率,越高音质越好
mode=3,0-3分别代表Stereo,Joint Stereo,Force ms_stereo,Mono(默认为自动,事实上1和3对文件大小的影响并不是很大)
另外可选的还有 vol(音量,取值0-10,数值越大音量越大,不建议修改)等

-srate 22050
声音采样频率设置,也可以选11025,文件可以稍小一点

-ovc lavc
输出视频编码 lavc就是libavcodec

-lavcopts
lavc的的选项
codec=flv flv格式压缩
vbitrate=150 视频码率
其他几个选项一概不懂,请看手册(一般来说看了还是不懂)

-vf scale=350:-3 -sws 2
缩放视频,指定宽度为350,高度按比例来。质量由-sws选项控制,具体看手册

-ofps 23 设定帧数,缩小帧数对节约文件大小效果不明显,且可能造成画面声音同步。建议不设置


mencoder压缩后生成的flv缺少meta信息,会造成播放时没有进度条等问题,需要再用flvmdi修复一下

代码
flvmdi test.flv


生成后的flv通过[url=http://www.stormplayer.org]MPC[url]就可以预览。

ffmpeg截图
代码
ffmpeg -i test.flv -ss 10 -vframes 1 -r 1 -ac 1 -ab 2 -s 320×240 -f image2 test.jpg

-ss 10 就是说1秒后的那一帧

然后生成flash视频播放器的话,网上例子很多,自己对Flash研究也不深,也就不多说了,要自定义播放器界面的参考这里

唯一需要补充一下的是视频的smoothing属性,现在的在线播放器尺寸一般都回比实际压缩后的视频尺寸大一些,smoothing=true可以保证放大的质量(包括全屏后的),具体的文章见
上一页12 下一页
文章如果有错误或者缺少文件,请发邮件提交给我们
上一篇:关于Flv的网页播放器的详解
下一篇:flash编码,转换,录制,播放方案一网打尽
Tags:     播放 解决方案 转换 视频 可以 mencoder flv ffmpeg 格式
>>> 最新评论:(共有 0 位网友发表了评论)      查看所有评论
  发表评论
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
·本站发布内容均为客观表达作者观点,不代表闪无忧立场,请勿攻击和漫骂
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为
  教程分类
  基础操作   动画特效
  应用开发   组件学习
  As程序   动画教程
  Flash cs3   AS 3.0
  FCS/FMS教程   Loading教程
  Flash与Web   Flash教程连载
  相关文章
·FMS在线客服系统(客户端篇)
·FMS在线客服系统(fms脚本)
·FMS在线客服系统(分析篇)
·分布式的Flash Media Server: Gr
·基于SharedObject 3*3数组 做的M
·用flex做的 多服务器 im 及 源码
·基于SharedObject做的房间列表和
·fms 2.0A星寻路
·FMS音频延迟分析
·fms中介函数
  热门文章
·Flash进度条的制作详细讲解(组图)
·flash幻灯片网页效果
·Flex 3 AdvancedDataGrid的使用(第二
·全Flash动画网站实现的基础教学
·flash水影效果字
·Flash打造简单的飘雪动画视觉特效
·FLASH+XML相册(附源码)
·超酷flash光晕移动效果
·Flash旋转拖尾文字效果的制作教程
·Flash制作大雪纷飞效果动画
·flash春雷闪电效果
关于我们 - 免责声明 - 网站地图 - 商务服务 - 联系我们 - RSS地图
©CopyRight 2006-2008, 5UFlash.COM, Inc. All Rights Reserved
鲁ICP备06034971号