汇讯WiseUC--连接人与业务,以即时通讯为基础的应用集成平台

視頻采集、截圖多媒體處理工具FFmpeg

2012年01月13日    點擊數: 23165    字體:           一鍵關注匯訊

  多媒體處理工具

  FFmpeg

  多媒體視頻處理工具fmpeg有非常強大的功能包括視頻采集功能、視頻格式轉換、視頻抓圖、給視頻加水引等FFmpeg是一套可以用來記錄、轉換數字音頻、視頻,并能將其轉化為流的開源計算機程序。它包括了目前領先的音/視頻編碼庫libavcodec。

  視頻采集功能:

  FFmpeg是在Linux下開發出來的,但它可以在包括Windows在內的大多數操作系統中編譯。這個項目是由Fabrice Bellard發起的,現在由Michael Niedermayer主持。

  ffmpeg視頻采集功能非常強大,不僅可以采集視頻采集卡或USB攝像頭的圖像,還可以進行屏幕錄制,同時還支持以RTP方式將視頻流傳送給支持RTSP的流媒體服務器,支持直播應用。

  ffmpeg在Linux下的視頻采集

  在Linux平臺上,ffmpeg對V4L2的視頻設備提高了很好的支持,如:

  ./ffmpeg -t 10 -f video4linux2 -s 176*144 -r 8 -i /dev/video0 -vcodec h263 -f rtp rtp://192.168.1.105:5060 > /tmp/ffmpeg.sdp

  以上命令表示:采集10秒鐘視頻,對video4linux2視頻設備進行采集,采集QCIF(176*144)的視頻,每秒8幀,視頻設備為/dev/video0,視頻編碼為h263,輸出格式為RTP,后面定義了IP地址及端口,將該碼流所對應的SDP文件重定向到/tmp/ffmpeg.sdp中,將此SDP文件上傳到流媒體服務器就可以實現直播了。

  ffmpeg在windows下的視頻采集

  在windows下關于ffmpeg視頻采集的資料非常少,但是ffmpeg還是支持windows下視頻采集的。ffmpeg支持windows下video for windows(VFW)設備的視頻采集,不過VFW設備已經過時,正在被WDM的視頻設備所取代,但是ffmpeg還沒有支持WDM的計劃,不過好像有將WDM轉為VFW的工具,因此ffmpeg還是可以在windows下進行視頻采集的。

  視頻格式轉換功能:

  ffmpeg視頻轉換功能。視頻格式轉換,比如可以將多種視頻格式轉換為flv格式,可不是視頻信號轉換 ,,

  ffmpeg可以輕易地實現多種視頻格式之間的相互轉換(wma,rm,avi,mod等),例如可以將攝錄下的視頻avi等轉成現在視頻網站所采用的flv格式。

  視頻截圖功能:

  對于選定的視頻,截取指定時間的縮略圖。視頻抓圖,獲取靜態圖和動態圖,不提倡抓gif文件;因為抓出的gif文件大而播放不流暢

  給視頻加水引功能:使用ffmpeg 視頻添加水印(logo)。

-----------------------------------------------------------------------------------------------------------------------

視頻轉碼:

    List commend = newjava.util.ArrayList();

    commend.add(ffmpeg硬盤路徑);

    commend.add("-i");

    commend.add(轉碼文件硬盤路徑);

    commend.add("-y");

    commend.add("-ar");

    commend.add("22050");

    commend.add("-s");

    commend.add("480*360");

    commend.add("-b");

    commend.add("1000");

    commend.add("-qscale");

    commend.add("4");

    commend.add(輸入文件路徑);

    try{

        ProcessBuilder builder = newProcessBuilder();

        builder.command(commend);

        builder.redirectErrorStream(true);

        System.out.println("視頻轉碼開始...");

        // builder.start();

        Process process = builder.start();

        InputStream in = process.getInputStream();

        byte[] re = newbyte[1024];

        System.out.print("正在進行轉碼,請稍候");

        while(in.read(re) != -1) {

        System.out.print(".");

        }

        System.out.println("");

        in.close();

        System.out.println("視頻轉碼完成...");

    } catch(Exception e) {

        e.printStackTrace();

        System.out.println("視頻轉碼失敗!");

    }

-----------------------------------------------------------------------------------------------------------------------

視頻截圖:

    List commend = newjava.util.ArrayList();

    commend.add(ffmpeg文件硬盤路徑);

    commend.add("-i");

    commend.add(待截圖文件硬盤路徑);

    commend.add("-y");

    commend.add("-f");

    commend.add("image2");

    commend.add("-ss");

    commend.add("8");

    commend.add("-t");

    commend.add("0.001");

    commend.add("-s");

    commend.add("350*240");

    commend.add(截圖的圖片保存路徑);

    try{

        ProcessBuilder builder = newProcessBuilder();

        builder.command(commend);

        builder.redirectErrorStream(true);

        System.out.println("視頻截圖開始...");

        // builder.start();

        Process process = builder.start();

        InputStream in = process.getInputStream();

        byte[] re = newbyte[1024];

        System.out.print("正在進行截圖,請稍候");

        while(in.read(re) != -1) {

        System.out.print(".");

        }

        System.out.println("");

        in.close();

        System.out.println("視頻截圖完成...");

    } catch(Exception e) {

        e.printStackTrace();

        System.out.println("視頻截圖失敗!");

    }

  FFMpeg參數說明:

  1. 常用通用選項

  -i fileName : 輸入文件-y : 覆蓋輸出文件-t 持續時間(秒) : 錄制多久-ss 指定時間(秒) : 開始錄制點-f 格式: 強迫采用格式(iamge2:jpg;gif:gif)

  2. 常用視頻選項

  -b 比特率: 默認為200(kb/s)-r 幀頻: 默認為25-s 幀大小: 寬x高(默認160x128)-aspect 設置橫縱比: 4:3-vn : 不做視頻記錄

  3. 常用音頻選項

  -ab 音頻碼率-ar 音頻采樣率-an 不使用音頻記錄

  windows下用ffmpeg.exe下載路徑http://ffmpeg.zeranoe.com/builds/ 自己選擇32位或64位 

 

 

上一篇:視頻技術

下一篇:云計算來勢洶洶 視頻會議服務加速個性化發展

Copyright ? 2007-2021 匯訊Wiseuc. 粵ICP備10013541號    
展開
主站蜘蛛池模板: 铜排,异型紫棒,紫铜棒,紫铜微孔管,异型黄管,黄铜管,异形紫管,紫铜管,焊接铜管,散热器铜管,电力铜管_河间市通海铜业有限公司 | 激光焊接机_激光打标机_激光切割机-惠州市镭凌激光科技有限公司 激光焊接不锈钢翅片管,不锈钢翅片管,激光焊接复合翅片管,南通拓帆换热设备有限公司 | 南昌今工科技有限公司 | 上饶市安信永辰会计师事务所有限公司 | 屋顶式恒温恒湿机,新风管道除湿机|上海众有实业百科 | 篮球场围网|网球场围网|球场围网|体育场围网_安平县炎煌丝网制品有限公司 | 余压控制器,余压监控系统,余压传感器-浙江巨川电气科技有限公司 | 土石_泥石分离机_无轴滚筒筛_振动筛 - 巩义市鑫利重工机械制造有限公司 | 泊头压滤机-隔膜-洗沙-厢式-板框压滤机-河北巨盛压滤机制造有限公司 | 桥梁养护|桥梁维修加固|隧道裂缝修补|支座更换|管道堵水气囊|衡水众拓路桥养护有限公司 | 消防排烟风机|防火阀|斜流风机|江苏恒恒暖通设备有限公司 | 易众拍卖行-事故车拍卖,残值车拍卖,水淹车拍卖,全损车拍卖,修复车拍卖,碰橦车拍卖,瑕疵车拍卖,报废车拍卖,泡水车拍卖,拆车件拍卖,配件拍卖,火烧车拍卖,二手车拍卖专业线上平台 | 自动锁螺丝机_在线式拧螺丝机_自动化灌胶机_ab点胶机_品牌厂家 | 金相切割机-金相磨抛机-显微/维氏/布氏/洛氏硬度计-自准直仪-金相显微镜-万能材料试验机-清洁度检测仪-淋雨试验机-上海中研精密仪器制造有限公司 | 上海物业管理_写字楼物业管理_厂房物业管理_上海企福物业管理有限公司 | 青浦区摄像头安装/青浦区无线网络覆盖/青浦区网络调试公司/青浦区IT外包公司/金山区网络维护公司/金山区防火墙调试公司 | 企业微信服务商-企业微信crm营销|认证-[朝阳企客通]一款企微管家服务型产品 | 中华石油化工网 www.cnpec.net——歌颂石化 服务石化 奉献石化 发展石化 | 型煤锅炉进煤机|型煤链条炉排 |重型板链除渣机 |丹东刮板输送机|丹东脱硫除尘器-铧洋机械 | 网上配音_免费配音_广告专题配音_网络录音网站【海豚配音】 | 气体灭火安装,气体灭火系统安装,七氟丙烷灭火系统安装,消防气体灭火控制系统 | 专业液压对辊,双齿辊破碎机,沙子烘干机,制砂洗沙设备生产线厂家 - 巩义市吉宏机械 | 长沙天为工程机械制造有限公司| 亿企商贸-亿万企业的商务贸易平台-B2B企业产品发布供求信息平台,一带一路中国企业及产品展示平台,免费企业智能自助建站网络营销推广平台,打造B2B企业黄页产品信息发布推广专业综合电子商务平台! | 无铅锡膏,无铅锡膏厂家,有铅锡膏厂家,高温锡膏厂家,环保锡丝,贴片红胶-东莞市科舜电子科技有限公司 | 形创(CREAFORM)3D扫描仪|三维检测|三维数字化处理|3D设备租赁|3D打印|——北京中显恒业仪器仪表有限公司 | 新鲜水果 新鲜茶 - 甜啦啦官网 | 思达测试|山东思达高科机械设备有限公司 | 上海眼科医院_上海希玛瑞视眼科医院【上海医保定点单位】 | 紫铜箔(带)导电胶带定做,定做紫铜箔(带)导电胶带厂家[价格]-艾飞敏铜箔 | 太原万通汽车学校[官网]-太原好的汽修培训学校,学新能源汽车技术,学汽修,学汽车检测与维修技术 | 男装加盟,男装加盟店,男装代理,男装品牌加盟,品牌男装加盟-虎豹男装品牌加盟 | 欧路哲门窗|佛山欧路哲门窗有限公司|专业门窗定制品牌 | 晶圆盒垫纸|铝线棒精益管|防静电接地系统工程-上海德拉电子科技有限公司 | 山东正奇塑料机械有限公司,山东塑料机械,水带机组,塑料管材机,山东吹膜机组厂家,山东农膜机厂家 山东长青石油液压机械有限公司-致力于石油机械设备的研发制造,提供定制服务 | 清扫器-聚氨酯清扫器-合金清扫器-四连杆自动纠偏-机械纠偏-锥辊纠偏-衡水涌泉机械科技有限公司 | 木别墅-小木屋-防腐木木屋-成都腾龙装配式建筑科技有限公司 | 塑胶跑道厂家_河北小区健身器材_悬浮地板-河北达创体育器材有限公司 | 郑州同林-金属切削液,全合成,半合成,防锈水溶性,微乳,油基长寿乳化切削液生产厂家 | 温湿度变送器_pm2.5传感器_湿敏电阻_二氧化碳传感器_甲醛传感器-美特瑞科技 | 连接器-连接线-连接器厂家-鑫鹏博20年高品质连接器生产厂家 |