title: 59.ffmpeg转码AAC音频H264视频 CreateTime: 2020-09-17 00:00:00 UpdateTime: 2024-04-15 18:38:55 CategoryName: Web --- --- title: "59.ffmpeg转码AAC音频H264视频" date: 2020-09-17T00:00:00+08:00 draft: false tags: ["ffmpeg"] categories: ["web"] author: "springrain" --- ## 说明 视频格式在不同设备存在兼容性,目前兼容最好的格式是:视频H264编码,音频AAC编码 的MP4格式 本文使用ffmpeg实现视频的转码 ## 安装X264 ```shell #下载x264项目 wget https://code.videolan.org/videolan/x264/-/archive/stable/x264-stable.tar.gz #解压 tar zxf ./x264-stable.tar.gz #进入目录 cd x264-stable #安装,默认安装在/usr/local/lib目录 ./configure --enable-shared --enable-static make && make install ``` ## 音频第三方编码器(建议使用内置的aac编码器) 建议使用内置的aac编码器. 第三方编码器有 - faac - libfdk_aac - qaac ## 安装ffmpeg ```shell #下载对应的包 http://ffmpeg.org/download.html #下载ffmpeg,解压,进入目录 #安装 ./configure --prefix=/usr/local/ffmpeg --enable-gpl --enable-libx264 make && make install ``` ## 查看 查看安装结果 ```ffmpeg --version``` ![](/public/59/ffmpegversion.png) 出现![](/public/59/versionerror.png) 这是因为h264编译到了```/usr/local/lib```目录下 编辑```ld.so.conf```文件 执行```vi /etc/ld.so.conf``` 在```include ld.so.conf.d/*.conf```后换行添加 ```/usr/local/lib``` ![](/public/59/ldconfig.png) ```shell #执行,不用处理出现的错误. ldconfig ``` ## 转码截图 ```shell #把 123.mp4 转成 456.mp4 音频是aac,视频是h264. #-threads 5 -preset ultrafast 多线程加快速度 /usr/local/ffmpeg/bin/ffmpeg -y -i ./123.mp4 -c:a aac -c:v libx264 456.mp4 -threads 5 -preset ultrafast #查看视频信息 /usr/local/ffmpeg/bin/ffmpeg -y -i ./456.mp4 #截图做封面 #ffmpeg -y -i ./123.mp4 -f image2 -t 0.001 -s 352x240 a.jpg ffmpeg -y -i ./123.mp4 -f image2 -t 0.001 a.jpg ```