C2VEAComponent: handle CSD info for input surface and byte-buffer modes

In current C2 framework, CSD info would be reported in different manners
whether encoder is in input surface mode and byte-buffer mode.

Byte-buffer mode:
A work with no input buffer will be queued prior to other works to get CSD
info only (CSD-holder work). When the first bitstream buffer is encoded by
VEA, the component needs to extract the CSD info and put into CSD-holder work
as a parameter.

Surface mode:
No CSD-holder work. When the first bitstream buffer is encoded by VEA, the
component needs to extract the CSD info and put into the same work
corresponding to this bitstream as a parameter.

Bug: 73059339
Test: android.media.cts.EncodeDecodeTest#testEncodeDecodeVideoFromBufferToBufferQCIF
Test: android.media.cts.EncodeDecodeTest#testEncodeDecodeVideoFromSurfaceToSurfaceQCIF
Change-Id: I13ede4c3b725e27cd0eb66b07925fdf93b5bafb4
(cherry picked from commit 0922077bcc55af276402129b23110de9abfee5f7)
2 files changed