FFmpeg是一个领先的多媒体框架工具集,几乎能够对任何格式的音视频文件进行解码,编码,转码,复用,解复用,流式传输,过滤和播放. 不管这些音视频文件所采用的格式是由某些标准委员会,社区还是公司设计的, FFmpeg都能识别. 它还具有高度可移植性:FFmpeg在各种构建环境、系统架构、配置下,如: Linux,Mac OS X,Microsoft Windows,BSD,Solaris等, 都能稳定工作。

  下面介绍 FFmpeg 在centOS7下的安装部署过程:

  1. 安装EPEL Release ,EPEL支持使用其它的repo源安装.

  1. sudo yum -y install epel-release rpm /*安装EPEL-Release
    sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7  /*导入Code
    yum repolist  /*查看EPEL源

  2. 安装nux-dextop源

  1. sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro /*导入Code
  2. sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm /*安装nux-dextop 源
  3. sudo yum repolist /*查看repo源是否安装成功

  3. 安装ffmpeg

  1. sudo yum install -y ffmpeg
    ffmpeg -version

FFmpeg常用基本命令

1.分离视频音频流

ffmpeg -i input.file -vcodec copy -an output.file_video  //分离视频流

ffmpeg -i input.file -acodec copy -vn output.file_audio  //分离音频流

2.视频解复用

ffmpeg –i input.mp4 –vcodec copy –an –f m4v output.264

ffmpeg –i input.avi –vcodec copy –an –f m4v output.264

3.视频转码

ffmpeg –i input.mp4 –vcodec h264 –s 352*278 –an –f m4v output.264              //转码为码流原始文件

ffmpeg –i input.mp4 –vcodec h264 –bf 0 –g 25 –s 352*278 –an –f m4v output.264  //转码为码流原始文件

ffmpeg –i input.avi -vcodec mpeg4 –vtag xvid –qsame output_xvid.avi            //转码为封装文件

//-bf B帧数目控制,-g 关键帧间隔控制,-s 分辨率控制

4.视频封装

ffmpeg –i video_file –i audio_file –vcodec copy –acodec copy video.file

5.视频剪切

ffmpeg –i input.avi –r 1 –f image2 image-%3d.jpeg        //提取图片

ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec copy -acodec copy cut.avi    //剪切视频//-r 提取图像的频率,-ss 开始时间,-t 持续时间

6.视频录制

ffmpeg –i rtsp://192.168.3.205:5555/input –vcodec copy input.avi

7.YUV序列播放

ffplay -f rawvideo -video_size 1920x1080 video.yuv

8.YUV序列转AVI

ffmpeg –s w*h –pix_fmt yuv420p –i video.yuv –vcodec mpeg4 video.avi

cent7安装ffmpeg的更多相关文章

  1. CentOS 6/7安装ffmpeg

    环境 CentOS 6/7 安装 导入GPG key rpm --import http://packages.atrpms.net/RPM-GPG-KEY.atrpms 安装ATRPMS Repo ...

  2. Linux下源码安装ffmpeg及ffmpeg的简单使用说明

    一.编译安装 ffmpeg在安装时依赖的包和版本都很让人头疼,不同编译环境也各不相同.公司之前封装了一个又各种出错. 其实办法很简单,就是到官网一步一步按着做就行了:http://trac.ffmpe ...

  3. mac下使用brew安装ffmpeg支持x265

    使用brew install ffmpeg 安装ffmpeg默认是没有支持x265的, 使用brew info ffmpeg 获取安装选项帮助, 使用brew reinstall ffmpeg --w ...

  4. CentOS6.4完全安装FFmpeg手记

    鼓捣媒体的人对FFmpeg应该不会陌生,它不仅功能强大,结构优美,灵活.易扩展,也是很其他多媒体播放器的基础,例如VLC,Mplayer等等,还有好多商业播放器都用了ffmpeg,但这些商业软件却没有 ...

  5. ubuntu下安装ffmpeg和X264

    第一步:安装必要的库 $:-dev libtheora-dev libx11-dev zlib1g-dev 第二步:安装SDL(否则可能编译不出ffplay) $:-dev $:-dev libsdl ...

  6. lnmp下安装ffmpeg和ffmpeg-php教程

    现在我将我的过程方法发布出来. 以下都是用SSH命令 一.安装ffmpeg 操作系统:centos6 安装ffmpeg有两种方式:①.用源码包安装,这个不知道怎么回事老是报错②用yum命令安装,cen ...

  7. Linux安装ffmpeg

      1.安装ffmpeg 简单步骤: A.首先去官网下载源码包,我的是ffmpeg-3.4.tar.bz2,下载之后上传至Linux准备安装,首先解压安装包: tar -xjvf ffmpeg-3.4 ...

  8. Mac下安装FFmpeg教程

    一.安装ffmpeg 分为两种安装方式: 1. 命令行安装 brew install ffmpeg 2. 下载压缩包安装 去 http://evermeet.cx/ffmpeg/ 下载7z压缩包,解压 ...

  9. centos7上安装ffmpeg

    FFmpeg介绍 FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件).它提供了录制.转换以及流化音视频的完整解决方案.它包含了非常先进的音 ...

随机推荐

  1. 用Javascript开发网页截屏插件

    实现思路用html2canvas.js将元素转换成canvas,在将canvas转成图片. html2canvas(document.body, { onrendered: function(canv ...

  2. 复刻smartbits的国产网络测试工具minismb功能特点-如何加载、发送PCAP数据包

    复刻smartbits的网络性能测试工具minismb,是一款专门用于测试智能路由器,网络交换机的性能和稳定性的软硬件相结合的工具.可以通过此以太网测试工具测试任何ip网络设备的端口吞吐率,带宽,并发 ...

  3. spark-调度策略之FAIR

    1.概述 spark有两种调度模式:FIFO.FAIR.FIFO是先进先出,有很强的顺序性,只有前一个处理完成后才会去处理后进来的.FAIR是公平调度,通过配置进行控制优先执行的任务.spark默认使 ...

  4. python 详解正则表达式的使用(re模块)

    一,什么是正则表达式 正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串.将匹配的子串替换或者从某个串中取出符合某个条件 ...

  5. 网络之Json生成解析

    // // ViewController.m // Json // // Created by City--Online on 15/4/28. // Copyright (c) 2015年 CYW. ...

  6. 使用ScheduledExecutorService实现任务延迟

    在做项目的过程中,遇到一个场景:在审批流中,如果上级领导不审批,则在10分钟后自动审批.也就是要做一个任务在多长时间后执行的效果 在不断的摸索中,想到了使用线程池,发现有个ScheduledExecu ...

  7. 根据ip获取地点

    #region 根据ip获取地点 /// 获取Ip归属地 /// </summary> /// <param name="ip">ip</param& ...

  8. net 自定义泛型那点事

    泛型概述 泛型是程序设计语言的一种特性.允许程序员在强类型程序设计语言中编写代码时定义一些可变部分,那些部分在使用前必须作出指明.各种程序设计语言和其编译器.运行环境对泛型的支持均不一样.将类型参数化 ...

  9. 使用 SQLServer On Linux 作为开发数据库遇到的编码问题

    在维护旧的项目的时候,遇到了使用 varchar 类型存储中文的情况,本地数据库是直接使用来自上古时期的 T-SQL 创建的.为了方便,我就没有安装 Windows 版的 SQLServer,直接用的 ...

  10. jstl 中无法使用EL语句。异常信息:According to TLD or attribute directive in tag file, attribute value does not accept any expressions

    JSTL 标签库的有两种 taglib 伪指令, 其中 RT 库即是依赖于 JSP 传统的请求时属性值, 而不是依赖于 EL 来实现: 只要将 <%@ taglib uri="http ...