我想知道 openmax、directshow 和 ffmpeg 之间的关系

I'd like to know the relations among openmax, directshow and ffmpeg

linux 的 openmax 是否与 windows 的 directshow 一样?

没有。 OpenMax 是跨平台的 API。没有人在 Windows 上看到它,但理论上可以在 Windows.

上实现 OpenMAX API

openmax和directshow的目的一样吗?

考虑到两者都是 API,是的,因为两者都涉及多媒体。

openmax 是否为 linux 中的 ffmpeg 提供硬件解码,就像 DirectShow 为 windows 中的 ffmpeg 提供硬件解码一样?

硬件支持问题与所有三个 API 无关。尽管 OpenMax 主要用于在 Linux 下公开用于多媒体加速的硬件,但可以很好地在软件(以及其他平台)中部分或全部实现 OpenMax API。 DirectShow 具有完全在软件中实现的过滤器和其他公开硬件的过滤器。 ffmpeg 也可以这样说 encoders, decoders and filters: some use hardware (see QSV encoders, OpenCL Video filters - 但 OpenCl 可能会部分或完全在软件中实现),大多数只是软件。