venc_request_idr
Applicability
Product |
Supported (√/x) |
|---|---|
x |
|
x |
|
x |
|
√ |
|
√ |
Function Usage
Requests for an instantaneous decoding refresh (IDR) frame.
Prototype
- C Prototype
1hi_s32 hi_mpi_venc_request_idr(hi_venc_chn chn, hi_bool instant);
- Python Function
1ret = acl.himpi.venc_request_idr(chn, instant)
Parameter Description
Parameter |
Description |
|---|---|
chn |
Int, encoding channel ID.
|
instant |
Int, whether to instantly encode an IDR frame. |
Return Value Description
Return Value |
Description |
|---|---|
ret |
Int, error code.
|
Restrictions
- Ensure that a channel has been created. Otherwise, a failure is returned.
- After an IDR frame request is received, if instant is 0, an IDR frame is encoded in the next frame as controlled by the frame rate controller; if instant is 1, an IDR frame is encoded instantly.
- IDR frame requesting is applicable to H.264 and H.265 encoding.
- Typically, the destination frame rate is the same as the source frame rate. Therefore, frame rate control has no impact on this API. Regardless of the setting of instant (either 0 or 1), an IDR frame is encoded on every call to this API. Note that too frequent calls to this API cause fluctuations in the frame rate and bit rate of the stream.
- In Smart P-frame or B-frame GOP mode (both modes are not supported currentlythe B-frame GOP mode is not supported currently), it takes some time for an IDR frame request to take effect.
Parent topic: VENC/JPEGE APIs