ffmpeg的使用-flv格式转换(flash方案一网打尽)

匿名 (未验证), 30 一月, 2010

先从ffmpeg开始。
  http://ffmpeg.sourceforge.net上有说明,音视频的分离,转换,解码的完全解决方案。
  其中最重要的就是libavcodec库。它被mplayer或者xine使用作为解码器。还有,国内比较流行的播放器影音风暴或MyMPC的后端ffdshow也是使用ffmpeg的解码库的。
  
  ffmpeg包括一组软件,ffmpeg用于对媒体文件进行处理,ffserver是一个http的流媒体服务器,ffplay是一个基于SDL的简单播放器。两个库文件libavcodec和libavformat。
  
  ffmpeg作为媒体文件处理软件,基本用法如下:
  ffmpeg -i INPUTfile [OPTIONS] OUTPUTfile
  输入输出文件通常就是待处理的多媒体文件了。可以是纯粹的音频文件,纯粹的视频文件,或者混合的。
  大部分常见的格式都能够“通杀”。象常见的各种mpeg,AVI封装的DIVX和Xvid等等
  具体的格式支持列表可以使用ffmpeg -formats查看或直接查阅文档。
  
  另:由于Linux把设备视为文件,因此-i选项后可以跟设备名。比如DV,视频卡,光驱或者其它的各类设备。
  输出的内容通过Options调整。列出几个主要的选项
  -vcodec 视频流编码方式
  -b 视频流码率(默认只有200k,一般都需要手动设置,具体的数值视codec选择而定)
  -r 视频流帧数(一般说来PAL制式通常用25,NTSC制式通常用29)
  -s 视频解析度(分辨率,也要视codec和你的需要而定。通常改变某个视频流的解析度是很耗费CPU的事情。另:具体写法使用“数字x数字”的形式。中间是小写字母“x”,这个用过mplayer的应该都知道)
  -t 处理持续时间。
  -acodec 音频流编码方式
  -ab 音频流码率(默认是同源文件码率,也需要视codec而定)
  -ar 音频流采样率(大多数情况下使用44100和48000,分别对应PAL制式和NTSC制式,根据需要选择)
  
  还有些可能需要用到的选项如
  -vn和-an分别是屏蔽视频流和屏蔽音频流,分别对源文件处理一次即可得到分离的音频和视频
  -author -title分别是设置媒体文件的作者和title
  -f选项是强制使用某种格式
  -target type是使用预置的格式转换(可以转成dvd,vcd或svcd)
  
  除此之外还有些更高级的选项,如设定vbr,或设定high quality,或者设定vbr的buff和max/min码率,象一般我们自用的dvd抓轨啦,DV转vcd或dvd啦,网上下载的电影转成vcd或dvd都不一定需要用到它们。
  具体的使用方法在man里面有介绍。简单明了。
  
  少许使用经验:
  1:ffmpeg对于rm的处理能力实在不敢恭维。也许是因为我主要使用二进制包安装的缘故,对于Real媒体格式只能处理老式的RV8编码的格式。而且效果不佳。
  2:格式转换是一件很耗费CPU资源的事情。虽说ffmpeg已经比WinAVI啦,TmpgEnc这些win下的非专业级视频处理软件做的好些了。毕竟我们可以把ffmpeg运行的时候放到后台。
  3:ffmpeg不是万能的,虽说支持的格式很多,但是如果你不是用的最新CVS出来的版本,可能碰上某些古怪的媒体文件就要郁闷。
  4:ffmpeg全部是命令行操作。哪位达人写个GUI前端出来就可以让不少菜鸟脱离苦海了。还有就是不能批量处理,但是这个可以用shell帮忙解决。
  
  Posted on July 20, 2006 1:27 PM | Permalink | Comments (0) | TrackBacks (0)
  
  Flash 视频(FLV)编码,转换,录制,播放方案一网打尽
  Collected links to Flash Video Encoding Tools & Related
  这是我收集的一份列表,自认为比较完整,希望对大家有所帮助.
  如果你知道更多,欢迎补充啦!
  客户端编码工具(Client-Side-FLV-Encoding)
  场景:拿到一个 MPG 或 AVI 文件,打算在个人电脑上转换成FLV.
  1,Sorenson Squeeze (http://www.sorensontech.com/solutions/prod/mx_win.php)
  2,Riva FLV Encoder (http://www.rivavx.com/index.php?encoder&L=3)
  3,Turbine Video Encoder (http://www.blue-pacific.com/products/turbinevideo/default.htm)
  4,Flix Exporter (http://www.on2.com/consumer/flix-exporter/)
  5,SWiSH Video (http://www.swishzone.com/index.php?product=video)
  6,Flash 自带的Flash Video Exporter (http://www.macromedia.com/devnet/flash/articles/flv_exporter_print.html)
  
  
  服务器端转换工具(Server-Side-FLV-Conversion)
  场景:想把 MPG 或 AVI 上传到你的服务器并自动转换成 FLV 吗?
  1,FFmpeg (http://sourceforge.net/projects/ffmpeg) | 教程一 (http://soenkerohde.com/tutorials/ffmpeg) | 教程二 (http://klaus.geekserver.net/flash/streaming.html)(Google Video 使用的就是这个东东.)
  2,Flix Engine (http://www.on2.com/developer/flix-engine-sdk) | 教程 (http://www.flexauthority.com/articlesIndex.cfm) | 范例 (http://www.flexauthority.com/Samples/FlixEngine/index.html)
  3,Turbine Video Engine (http://www.blue-pacific.com/products/turbinevideosdk/default.htm)
  4,Video to Flash Console (http://www.geovid.com/Video_to_Flash_Console)
  
  录像/实时广播(Record/Broadcast)
  场景:想制作一个语音视频Blog满足自恋的欲望吗?
  1,RED5 (http://www.osflash.org/red5)
  2,Flash Media Server (http://www.macromedia.com/go/fms)
  在线编码,分享视频(Online Encode & Share)
  场景:想不花钱就可以在线分享你的视频吗?
  1,Google Video (http://video.google.com/)
  2,You Tube (http://www.youtube.com/)
  本地 FLV 文件播放器(FLV Player)
  场景:拿到了 FLV 文件不知道怎么播放了.
  1,martijndevisser FLV Player (http://www.martijndevisser.com/2005/10/flv_player_updated.html)
  2,FlashGuru FLV Player (http://www.flashguru.co.uk/free-tool-flash-video-player)
  3,FCZone FLV Player (http://fczone.com/2006/01/fms-media-player.cfm)
  在线 FLV 文件播放器(Online FLV Player)
  场景:知道一个在线FLV地址,又懒得下载和安装播放器.
  1,Loadr (http://dengjie.com/loadr)
  2,Google Player Generator (http://dengjie.com/loadr/r.swf?file=/temp/google_player.swf&clr=000FFF)

评论