Как сбросить буфер yuv из omxcodec в Android

Я следовал за шагами, упомянутыми в ссылке ниже, чтобы получить буфер gralloc. Но как получить размер буфера? Как вывести YUV из вывода декодирования OMXCodec

для тестирования я взял длину как, ширина х высота х 1,5, поскольку выходной формат декодера OMXCodec был OMX_QCOM_420Planer32m.

Но когда я записываю YUV-фрейм в файл, мой yuv-зритель не может его отрендерить. Затем я попытался длина от range_length(). для этого также та же самая проблема.

Также я конвертировал файл в JPEG, это неправильно, так как YUV само по себе неправильно.

Помогите мне, пожалуйста. Как сделать дамп буфера в файл. я тестирую в Kitkat (moto g) и в ICS (планшет Samsung)

спасибо рагу

1 ответ

Как отмечается в ссылках из статьи, на которую вы ссылались, буфер находится не в простом плоском формате YUV, а в собственном формате Qualcomm.

Вам нужен код, который знает, как его декодировать. Этот принятый ответ на этот вопрос, кажется, имеет его, хотя я не знаю, насколько стабильны определения формата, и есть некоторые комментарии, которые предполагают, что опубликованный код не совсем верен.

Другие вопросы по тегам