Мне нужно воспроизвести видео определенным образом. Вот почему мне нужно «предварительно декодировать» некоторые кадры, сохранить их и показать позже. Я использую MediaCodec для декодирования видеокадров. Выходные буферы имеют формат YUV(420), и вопрос в том, как лучше всего отобразить их позже на экране?
Это так? лучше дублировать вывод кодека.GetOutputBuffer() или сохранить код.GetOutputImage()?
Существует ли способ аппаратного ускорения конвертировать из YUV в RGB доступно как функция Java?
Как эффективно вывести данные на поверхность?
Нужно ли вообще делать конвертацию? Нельзя ли напрямую отобразить данные YUV (в любой форме, например ByteBuffer, Image или что-то еще) на Surface с помощью более новой (>=8.0) версии Android?
Кодек mp4 не может получить указание производить вывод RGB вместо YUV, верно?
Я просмотрел множество похожих (или одинаковых) вопросов, но в основном они были старыми, и я только что видел ручное преобразование YUV в RGB, которое мне кажется слишком медленным. Я надеялся, что с новыми версиями Android дела пойдут немного лучше
Мне нужно воспроизвести видео определенным образом. Вот почему мне нужно «предварительно декодировать» некоторые кадры, сохранить их и показать позже. Я использую MediaCodec для декодирования видеокадров. Выходные буферы имеют формат YUV(420), и вопрос в том, как лучше всего отобразить их позже на экране?
[list] [*]Это так? лучше дублировать вывод кодека.GetOutputBuffer() или сохранить код.GetOutputImage()? [*]Существует ли способ аппаратного ускорения конвертировать из YUV в RGB доступно как функция Java? [*]Как эффективно вывести данные на поверхность? [*]Нужно ли вообще делать конвертацию? Нельзя ли напрямую отобразить данные YUV (в любой форме, например ByteBuffer, Image или что-то еще) на Surface с помощью более новой (>=8.0) версии Android? [*]Кодек mp4 не может получить указание производить вывод RGB вместо YUV, верно? [/list]
Я просмотрел множество похожих (или одинаковых) вопросов, но в основном они были старыми, и я только что видел ручное преобразование YUV в RGB, которое мне кажется слишком медленным. Я надеялся, что с новыми версиями Android дела пойдут немного лучше ;)
Я преобразовываю кадры, доставленные в формате V210 (упакованный 10 -битный YUV) в P210 (плоский 10 -битный 10 -битный значения). Вход, как правило, 4K (3840x2160) при до 60 Гц. Скалярная реализация довольно проста и, вероятно, достаточно быстрая,...
Я преобразовываю кадры, доставленные в формате V210 (упакованный 10 -битный YUV) в P210 (плоский 10 -битный 10 -битный значения). Вход, как правило, 4K (3840x2160) при до 60 Гц. Скалярная реализация довольно проста и, вероятно, достаточно быстрая,...
Я пытаюсь закодировать видео MP4, используя необработанные данные кадров YUV, но не знаю, как заполнить данные плоскости (желательно без использования других библиотек, таких как ffmpeg)
Данные кадра уже закодированы в I420 и не требуют...
Я реализую проект компьютерного зрения для Android и использую для него OpenCV с Android NDK. Он получает данные в формате YUV NV21 от камеры в массиве байтов от PreviewCallback и вызывает собственную часть приложения.
Я реализую проект компьютерного зрения для Android и использую для него OpenCV с Android NDK. Он получает данные в формате YUV NV21 от камеры в массиве байтов от PreviewCallback и вызывает собственную часть приложения.