| 104 | } |
| 105 | |
| 106 | void PAGEncoder::encodeRGBA(uint8_t* data, int dataStride, FrameType frameType) { |
| 107 | if (data == nullptr) { |
| 108 | return; |
| 109 | } |
| 110 | uint8_t* tmpData[4] = {nullptr}; |
| 111 | int tmpStride[4] = {0}; |
| 112 | encoder->getInputFrameBuf(tmpData, tmpStride); |
| 113 | RGBAToYUV420(data, dataStride, tmpData[0], tmpData[1], tmpData[2], tmpStride[0], tmpStride[1], |
| 114 | inputWidth, inputHeight, 0); |
| 115 | |
| 116 | if (hasAlpha) { |
| 117 | GetAlphaFromRGBA(tmpData, tmpStride, data, dataStride, SIZE_ALIGN(inputWidth), |
| 118 | SIZE_ALIGN(inputHeight), alphaStartX, alphaStartY); |
| 119 | FillYUVPadding(tmpData, tmpStride, SIZE_ALIGN(inputWidth), SIZE_ALIGN(inputHeight), alphaStartX, |
| 120 | alphaStartY); |
| 121 | } |
| 122 | |
| 123 | encoder->encodeFrame(tmpData, tmpStride, frameType); |
| 124 | } |
| 125 | |
| 126 | int PAGEncoder::encodeHeaders(uint8_t* header[], int headerSize[]) { |
| 127 | return encoder->encodeHeaders(header, headerSize); |
no test coverage detected