暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

FFmpeg支持x264

Cube2048 2022-08-28
1917


# 前言

上篇文章我们讲了FFmpeg的编译安装,安装成功后就可以愉快的使用ffmpeg、ffprobe等命令行工具进行愉快玩耍了,详见:FFmpeg编译安装这篇主要讲一下FFmpeg如何支持x264。

# 安装x264

当我们使用ffmpeg的帮助功能查看是否支持x264时,可以用下面的命令

    ffmpeg -h encoder=libx264

    上面命令输出:

      Codec 'libx264' is not recognized by FFmpeg.

      可见提示FFmpeg无法识别libx264,对于FFmpeg来说,libx264是第三方库,上期我们讲FFmpeg编译安装时用的是最简模式(直接./configure)

      下面来看看如何如何安装x264

      ## 下载源码

      首先打开源码地址:https://code.videolan.org/videolan/x264/

      clone代码:

        git clone https://code.videolan.org/videolan/x264.git

        ## 执行编译安装

        依次执行以下命令:

          ./configure --enable-shared --enable-static
          make
          make install

          ## 重新编译安装FFmpeg

          上面第二步成功安装x264之后,就可以重新编译安装FFmpeg使其支持x264。

          回到FFmpeg目录,依次执行以下命令:

            ./configure --enable-shared --enable-libx264 --enable-gpl --enable-pthreads
            make
            make install


            ## 验证

            上面成功执行之后,就表示安装成功了,我们再来执行开头的命令

              ffmpeg -h encoder=libx264
              //输出:                                                    
              ffmpeg version N-107898-gcaf26a8a12 Copyright (c) 2000-2022 the FFmpeg developers
              ......
              Encoder libx264 [libx264 H.264 AVC MPEG-4 AVC MPEG-4 part 10]:
              General capabilities: dr1 delay threads
              Threading capabilities: other
              Supported pixel formats: yuv420p yuvj420p yuv422p yuvj422p yuv444p yuvj444p nv12 nv16 nv21 yuv420p10le yuv422p10le yuv444p10le nv20le gray gray10le
              libx264 AVOptions:
              ......

              可见已经支持x264

              ## 补充

              1. 我们在编译x264时并没有指定路径,如这样

                ./configure --prefix=/usr/local/x264 --enable-shared --enable-static

                而是:

                  ./configure --enable-shared --enable-static

                  这样的一个好处是后面编译FFmpeg时不用再配置路径

                  2. 执行make命令的时候也可以加上 -j8,表示8核并行编译,如:make -j8


                  # 结尾

                  本文主要讲了FFmpeg 如何支持x264,相对来说还是比较简单的,先编译x264,如何再重新编译FFmpeg,使其支持x264。有兴趣的同学可以参照着自己操作一遍。

                  文章转载自Cube2048,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                  评论