如何使用 ffmpeg 对 H.264 中的视频进行编码?
Posted
技术标签:
【中文标题】如何使用 ffmpeg 对 H.264 中的视频进行编码?【英文标题】:How to use ffmpeg to encode video in H.264? 【发布时间】:2016-09-01 04:23:48 【问题描述】:我已经从https://github.com/FFmpeg/FFmpeg 安装了 ffmpeg 3.0,我正在尝试将使用 mepeg4 第 2 部分编码的视频转换为 H264,但我得到了Unknown encoder 'libx264'
错误
这是我的命令:(我尝试了 h264、x264、libx264,它们都不起作用)
ffmpeg -i Fashion.divx -acodec aac -vcodec libx264 out.mp4
我查看了支持的编解码器列表
Codecs:
D..... = Decoding supported
.E.... = Encoding supported
..V... = Video codec
..A... = Audio codec
..S... = Subtitle codec
...I.. = Intra frame-only codec
....L. = Lossy compression
.....S = Lossless compression
-------
D.VI.. 012v Uncompressed 4:2:2 10-bit
这里是h264:
D.V.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_vdpau)
我用的是ffmpeg 3.0,从那个列表看,好像不支持h264编码,只支持解码h264吧?
我尝试通过本指南启用 h.264 How to quickly compile FFmpeg with libx264 (x264, H.264)
./configure --enable-gpl --enable-libx264
我明白了 ./configure --enable-gpl --enable-libx264
ERROR: libx264 not found
If you think configure made a mistake, make sure you are using the latest
version from Git. If the latest version fails, report the problem to the
ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
Include the log file "config.log" produced by configure as this will help
solve the problem.
我应该怎么做才能使 h.264 中的视频编码工作?
【问题讨论】:
您链接的快速编译指南中的第 1 步:编译 x264 是的,我刚发现需要单独安装libx264,谢谢。 【参考方案1】:好的,我刚发现需要单独安装libx264,命令如下
sudo apt-get install yasm libvpx. libx264.
确实在安装 libx264 后,我得到了
DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_vdpau ) (encoders: libx264 libx264rgb )
【讨论】:
【参考方案2】:呵呵,你已经回答了自己的问题:
这里是h264:
D.V.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_vdpau)
如清单所示,编码器的名称是h264
,编解码器的名称可以在大括号之间找到。
所以你的命令应该是这样的:
ffmpeg -i Fashion.divx -acodec libfaac -vcodec h264 out.mp4
我的 FFmpeg 版本有 libx264,所以 -codecs
选项打印我这个:
DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (decoders: h264 h264_vdpau ) (encoders: libx264 libx264rgb )
如您所见,我可以使用-vcodec libx264
或-vcodec libx264rgb
。
【讨论】:
以上是关于如何使用 ffmpeg 对 H.264 中的视频进行编码?的主要内容,如果未能解决你的问题,请参考以下文章
调用FFmpeg SDK对H.264格式的视频压缩码流进行解码
使用 ffmpeg 将视频转换为 MP4 (H.264/AAC)