zoukankan      html  css  js  c++  java
  • FFmpeg学习(一)FFmpeg安装与测试

    基于Ubuntu16.04

     一:FFmpeg的下载

    (一)git命令下载源码(太慢)

    git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg

    (二)官网下载源码:http://www.ffmpeg.org/download.html

    (三)文件解压

    tar -jxvf ffmpeg-snapshot-git.tar.bz2

    (四)目录分析

    1)libavcodec:音视频编解码库;(不做具体编解码操作,只是调用H264、H265...)
    
    2)libavdevice:音视频输出输入设备库;(sdl显示设备,alsa音频输出设备,opengl图形加速设备,v4l2视频设备(比如摄像头)...的采集)
    
    3)Libavfilter:音视频滤镜库,滤镜主要是用来实现图像的各种特殊效果;
    
    4)libavformat:音视频格式库,用于各种音视频封装格式的解析和封装;
    5)libavutil:音视频工具库,包含一些公共的工具函数;
    
    6)libpostproc:音视频后期效果处理库;

    7)libavresample:音频重采样;
    8)libswresample:功能和libavresample十分类似,是FFmpeg相对早期的实现方法; 9)libswscale:视频场景比例缩放、色彩映射转换库;

    二:FFmpeg配置与安装

    (一)安装依赖库yasm、libx264、libx265(后面会用到)

    1.yasm等库安装

    sudo apt-get update
    sudo apt-get -y install autoconf automake build-essential libass-dev libfreetype6-dev libtheora-dev libtool libvorbis-dev pkg-config texinfo zlib1g-dev
    sudo apt-get install libfdk-aac-dev
    sudo apt-get install libmp3lame-dev
    sudo apt-get install yasm

    2.libx264安装 下载地址:http://www.videolan.org/developers/x264.html

    (1)安装依赖

    sudo apt-get install cmake
    sudo apt install cmake-curses-gui

    (2)进入解压后的源代码目录

    ./configure --enable-shared --enable-static --disable-asm
    sudo make && sudo make install

    (3)查看文件

    3.libx265安装 下载地址:http://www.videolan.org/developers/x265.html

    (1)安装依赖,使得支持hg命令下载libx265

    sudo apt-get install mercurial

    (2)进入./x265_2.9/build/linux目录

    ./make-Makefiles.bash
    sudo make && sudo make install

    (3)查看文件

    (二)配置命令及安装(尽可能多配置,比如libfdk-aac后面会用于音频编解码)

    ./configure   --enable-shared  --prefix=/usr/local/ffmpeg  --enable-gpl --enable-libx264  --enable-libx265   --enable-debug --disable-optimizations --enable-pthreads --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libtheora --enable-libvorbis --enable-libmp3lame --enable-nonfree --enable-gpl
    sudo make && sudo make install

    (三)配置环境变量

    ubuntu通过源码安装软件未进行环境变量配置,找不到启动路径。

    如果直接使用ffmpeg -version会报错:ffmpeg: error while loading shared libraries: libavdevice.so.58: cannot open shared object file: No such file or directory

    1.打开动态库配置文件

    sudo gedit /etc/ld.so.conf

    2.添加路径信息

    /usr/local/ffmpeg/lib/

    3.更新配置文件

    sudo ldconfig

    (四)测试命令

    /usr/local/ffmpeg/bin/ffmpeg -version

    (五)配置环境变量(使得直接使用ffmpeg命令)

    1.临时设置:

    export PATH=/usr/local/ffmpeg/bin/:$PATH

    2.当前用户的全局设置:

    vi ~/.bashrc

    添加bin目录到环境变量文件中:

    export PATH=$PATH:/usr/local/ffmpeg/bin

    使之生效:

    source .bashrc

    直接测试ffmpeg:

    3.所有用户的全局设置 

    修改/etc/profile即可,使用source profile生效

  • 相关阅读:
    利用JNI技术在Android中调用、调试C++代码
    iOS在线更新framework,使用NSBundle动态读取
    CocoaPods pod install
    Quartz 2D在ios中的使用简述二:创建画布
    iOS并发编程笔记【转】
    openCV C++ 代码笔记
    Quartz 2D在ios中的使用简述一:坐标体系
    ios视频播放器,代码和界面分离
    mac显示和隐藏文件
    3点画圆
  • 原文地址:https://www.cnblogs.com/ssyfj/p/14556182.html
Copyright © 2011-2022 走看看