[1] ubuntu 16.04下ffmpeg+sdl的开发环境搭建及测试


日期:2016.09.28
作者:isshe
github:https://github.com/isshe
邮箱:i.sshe@outlook.com


安装ffmpeg:

需要先安装相关工具以及库:
yasm,libx264,libx265,libfdk-aac, libmp3lame,libopus,libvpx
cmake mercurial(源码安装libx265需要用到)

用apt-get安装:

  • yasm/nasm
  • libx264-dev
  • libx265-dev
  • libmp3lame
  • libopus-dev
  • libfdk-aac-dev 「源里面可能没有」

    可以用apt-get安装的推荐用apt-get安装,简单,默认的头文件以及库的路径是:
    /usr/local/include and /usr/local/lib

源码下载:

源码安装:

  • 安装x265:
sudo apt-get install cmake mercurial
hg clone https://bitbucket.org/multicoreware/x265
cd x265/build/linux
PATH="$HOME/bin:$PATH" cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source
#如果默认路径安装使用:cmake -G "Unix Makefiles" -DENABLE_SHARED:bool=off ../../source
make
make install
make distclean
  • 其他(除了ffmpeg)的操作基本都是:

    • 解压
    • cd 进目录
    • ./configure (如果不是默认路径则使用–prefix=”pathname”, –bindir=”pathname”指定相关路径)
    • make
    • sudo make install
    • make clean / distclean [全部装好再clean,否则如果出现什么状况又要重新make,耗时间]
  • ffmpeg源码安装(默认路径):

    tar xjvf ffmpeg-snapshot.tar.bz2
    cd ffmpeg
    ./configure \
    --pkg-config-flags="--static" \
    --enable-gpl \
    --enable-libass \
    --enable-libfdk-aac \
    --enable-libfreetype \
    --enable-libmp3lame \
    --enable-libopus \
    --enable-libtheora \
    --enable-libvorbis \
    --enable-libvpx \
    --enable-libx264 \
    --enable-libx265 \
    --enable-nonfree
    make install
    make distclean
    hash -r
  • 非默认路径:

    tar xjvf ffmpeg-snapshot.tar.bz2
    cd ffmpeg
    PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \
    --prefix="$HOME/ffmpeg_build" \ 
    --pkg-config-flags="--static" \
    --extra-cflags="-I$HOME/ffmpeg_build/include" \
    --extra-ldflags="-L$HOME/ffmpeg_build/lib" \
    --bindir="$HOME/bin" \
    --enable-gpl \
    --enable-libass \
    --enable-libfdk-aac \
    --enable-libfreetype \
    --enable-libmp3lame \
    --enable-libopus \
    --enable-libtheora \
    --enable-libvorbis \
    --enable-libvpx \
    --enable-libx264 \
    --enable-libx265 \
    --enable-nonfree
    PATH="$HOME/bin:$PATH" make
    make install
    make distclean
    hash -r

测试代码:test_ffmpeg.c

    #include <stdio.h>
    #include <libavcodec/avcodec.h>
    #include <string.h>
    int main(void)
    {
         printf("%s", avcodec_configuration());
         getchar();
         return 0;
    }

编译:

```
gcc test_configure.c -o test_configure -lavcodec -lavutil -m -lpthread 
```

示例结果:

这里写图片描述

安装sdl1.2 和 sdl2

  • sudo apt-get install libsdl2 libsdl1.2

测试代码:

(需要下载一个yuv文件,并把下面的参数改改)


#include <stdio.h>

#include <SDL2/SDL.h>
//#include <SDL2/SDL2main.h>


int main(void)
{
    if (SDL_Init(SDL_INIT_VIDEO))
    {
        printf("Couldn't initialize SDL - %s\n", SDL_GetError());
    }
    else
    {
         printf("Success init SDL\n");
    }

    return 0;
}

编译:

  • gcc ffmpeg_sdl.c -lSDL2 -lSDL2main

示例结果:

这里写图片描述

相关资料下载:

http://download.csdn.net/detail/i_scream_/9643410

参考资料:

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值