AOMediaCodec / av1-spec

AV1 Bitstream & Decoding Process Specification
https://aomedia.org/
Other
333 stars 69 forks source link

Is BILINEAR interpolation filter supported in `inter block mode` as 5.11.7? #342

Closed ilongshan closed 7 months ago

ilongshan commented 7 months ago

The spec defines four interpolation filters in 6.8.9, and it says

interpolation_filter specifies the filter selection used for performing inter prediction:

From the spec, BILINEAR is explicitly used in intra frame mode as 5.11.7.

And from libaom and SVT-AV1, for the interpolation filter search, it only searches from {EIGHTTAP, EIGHTTAP_SMOOTH, EIGHTTAP_SHARP}, which seems BILINEAR is not used in inter prediction. But I cannot find description in the spec about whether BILINEAR can be used in inter prediction or not.

So Can BILINEAR be used in Inter block mode as 5.11.23?

peterderivaz commented 7 months ago

In general, BILINEAR can be used for inter prediction, but it will only occur if interpolation_filter is set to BILINEAR (this sets the interpolation filter for the whole frame). I don't think libaom or SVT-AV1 consider this option, but other encoders might, in particular hardware encoders where they have taken advantage of bilinear filters requiring less computation and memory access.

ilongshan commented 7 months ago

Thank you for clearing that up