CODECAPI_AVEncVideoUseLTRFrame property

Specifies that the current frame is encoded using one or multiple LTR frames.

Data type

ULONG (VT_UI4)

Property GUID

CODECAPI_AVEncVideoUseLTRFrame

Property value

The value of this control includes two fields, where each field has 16 bits.

Value Meaning
The first field
Bits[0..15]
Indicates which LTR frame(s) are allowed for encoding the current frame.
H.264/AVC encoders:
This is a bitmap that indicates which LTR frames can be used as a reference for this frame. The least significant bit corresponds to LTR index 0, the second least significant bit corresponds to LTR index 1, etc.
This value shall not be 0.
The highest index specified by this value shall not be greater than the maximum number of LTR frames specified in the CODECAPI_AVEncVideoLTRBufferControl property less one.
The second field
Bits[16..31]
Flag that indicates whether additional limitations are required for encoding subsequent frames.
H.264/AVC encoders:
1 is on the only valid value for this field. All other values are invalid and reserved for future use.
When the flag is 1, the encoder shall encode subsequent frames in encoding order subject to the following constraints:
  • It shall not use short term reference frames in encoding order older than the current frame or future encoding in encoding order.
  • It shall not use LTR frames not described by the most recent CODECAPI_AVEncVideoUseLTRFrame control.
  • It may use LTR frames updated after the current frame.

Remarks

H.264/AVC encoders:

This property should not be called if a pending call to use an LTR frame has been issued using the CODECAPI_AVEncVideoUseLTRFrame property and the encoder has not yet generated a frame that has used the LTR. In other words, the encoder should not queue up CODECAPI_AVEncVideoUseLTRFrame requests.

If a CODECAPI_AVEncVideoUseLTRFrame request is submitted while another CODECAPI_AVEncVideoUseLTRFrame request is still pending, then the older request should be dropped.

Calling CODECAPI_AVEncVideoUseLTRFrame on a non-base layer frame is valid and shall apply to the non-base layer frame, without delay to a base layer frame.

Requirements

Requirement Value
Minimum supported client
Windows 8.1 [desktop apps | UWP apps]
Minimum supported server
Windows Server 2012 R2 [desktop apps | UWP apps]
Header
Codecapi.h

See also

Media Foundation Properties