关于 ffmpeg 的 codecs 问题

各位大大好
请教一个问题,就是我的 openSUSE 里面的 ffmpeg ,我用
ffmpeg -codecs
查看,有以下内容 (如图) 不太了解:

codec 不就是 encoder 和 decoder 的合称吗?那这边的 encoding/decoding supported 代表的意义又是什么?

以图中的 012v 为例,意思是说有这个 codec 但是不支持 encoding 及 decoding 吗?

又我在我的 ffmpeg 里面找不到 video 的 mp4 的 codec 那我要如何解决呢?


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

这已经说的非常清楚了.
另外,mkv,mp4,avi, rmvb 等只是容器,而不是视频编码格式。

谢谢大大的回复,我可能没表达清楚:我的疑问是有 codec 不代表可以做 encode 或 decode 是吗?或者说 codec 和 encoder 及 decoder 是不样的事情??
另外我查了下,像我的 ffmpeg 没有 h.264 的 encoding supported ,那是不是代表我无法生成 h264 (.mp4) 的视频文件?

那有什么办法可以解决呢?

感谢大大…

首先容器和视频编码没有直接关联,mp4 文件不一定要用 H.264 编码,用 H.264 编码的也可以放在别的容器里。
其次编码器有些不是开源的,要用 packman 的源装 ffmpeg 和 libx264。

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
codecs是编解码器的统称,,编码 (decoding)/解码 (encoding) 是两回事,V/A/S 是编码器类型,无损 (loseless)/有损 (lossy) 是编码的压缩类型。。帧内编解码- Intra frame-only codec。

格式支持用它看,标准的ffmpeg支持几乎所有的音视频格式和编码格式(不熟悉所有的?,但是我真没看过那么多格式, 对了,有些闭源格式不支持)。h264,hevc,mp4,mkv,avi,flv,f4v,vp 系列等等当然支持。
ffmpeg -formats

另外,你真心需要仔细阅读 ffmpeg -help 和官方的文档和wiki。另外,还要补充些关于格式,容器,编码,有损/无损等等的概念。
另外,如楼上所说,mp4 和h264是两个东西,mp4 是个容器,可以放一条视频流,一条音轨(mp3/aac…);h264 是编码格式,只能是一条 h264 编码的视频流(注:不考虑后缀滥用)。