forked from marfrit/libva-v4l2-request-fourier
Merge pull request 'picture: no-op codec_set_controls case for VAProfileAV1Profile0' (#10) from noether/picture-av1-noop into master
Reviewed-on: marfrit/libva-v4l2-request-fourier#10
This commit is contained in:
@@ -318,6 +318,30 @@ static VAStatus codec_set_controls(struct request_data *driver_data,
|
|||||||
return VA_STATUS_ERROR_OPERATION_FAILED;
|
return VA_STATUS_ERROR_OPERATION_FAILED;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case VAProfileAV1Profile0:
|
||||||
|
/*
|
||||||
|
* AV1 has no codec-specific V4L2 control dispatch wired up
|
||||||
|
* yet on this branch (see config.c VAProfileAV1Profile0
|
||||||
|
* comment). For the daedalus_v4l2 daemon path that's fine:
|
||||||
|
* AV1 frames are self-describing per-frame (OBU sequence +
|
||||||
|
* frame headers carry everything libavcodec needs), so the
|
||||||
|
* bitstream in the V4L2 OUTPUT buffer is sufficient — no
|
||||||
|
* V4L2_CID_STATELESS_AV1_* controls have to be populated.
|
||||||
|
*
|
||||||
|
* Per-codec dispatch in request_switch_device_for_profile
|
||||||
|
* has already retargeted (video_fd, media_fd) to
|
||||||
|
* video_fd_daedalus (or video_fd_vpu981 on RK3588 if
|
||||||
|
* present) by the time we get here; the OUTPUT buffer will
|
||||||
|
* be queued via that fd and the kernel forwards bytes to
|
||||||
|
* the daemon as a regular REQ_DECODE. No-op is the
|
||||||
|
* correct shape.
|
||||||
|
*
|
||||||
|
* When the vpu981-targeted V4L2_CID_STATELESS_AV1_* dispatch
|
||||||
|
* lands from the av1-iter1 operator branch, replace this
|
||||||
|
* with av1_set_controls(...).
|
||||||
|
*/
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return VA_STATUS_ERROR_UNSUPPORTED_PROFILE;
|
return VA_STATUS_ERROR_UNSUPPORTED_PROFILE;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user