有没有办法检索 MediaCodec 实例的限制?

Is there a way to retrieve the limits of a MediaCodec instance?

我们用一个例子来说明这一点。假设一个 MediaCodec 实例创建如下:

MediaCodec.createDecoderByType("video/avc");

它配置了一个 MediaFormat 实例。我们知道解码器有以下限制 :

<MediaCodec name="OMX.rk.video_decoder.avc" type="video/avc">
    <Limit name="size" max="4096x2160" min="176x144"/>
    <Limit name="alignment" value="8x8"/>
    <Limit name="block-size" value="16x16"/>
    <Limit name="blocks-per-second" max="244800" min="1"/>
    <Limit name="bitrate" range="1-10000000"/>
    <Feature name="adaptive-playback"/>
</MediaCodec>

有没有办法以编程方式找到分辨率限制 (176x244 - 4096x2160)?

从 MediaCodec.getCodecInfo() 获得的 VideoCapabilities 怎么样?

https://developer.android.com/reference/android/media/MediaCodecInfo.VideoCapabilities.html