Преобразовать byte [] в класс VideoFrame или VideoFrame.I420Buffer WebRt c - PullRequest
4 голосов
/ 16 июня 2020

Есть ли способ конвертировать byte [] NV21Data в WebRt c VideoFrame?

Я пытаюсь сделать это с помощью TextureBufferImpl и, кажется, это единственный способ, но это выглядит очень сложно.

YuvConverter yuvConverter = new YuvConverter(); 
TextureBufferImpl buffer = new TextureBufferImpl(composedBitmap.getWidth(), 
composedBitmap.getHeight(),VideoFrame.TextureBuffer.Type.RGB, 
textures[0], new Matrix(), surfaceTextureHelper.getHandler(), yuvConverter, null);


VideoFrame.I420Buffer i420Buf = yuvConverter.convert(buffer);
VideoFrame CONVERTED_FRAME = new VideoFrame(i420Buf, 0, System.nanoTime());

Этот вопрос содержит информацию о том, как преобразовать VideoFrame в байт [] Android org.webrt c .VideoRenderer.I420Frame массивы в PreviewCallback.onPreviewFrame byte []

Этот способ дает VideoFrame как черный, кажется, не работает должным образом.

Этот вопрос конвертирует в webRt c VideoFrame с поверхности Преобразование растрового изображения в WebRT C VideoFrame

https://gist.github.com/n1xx1/2cd38043838e259969bce983ce21ffaa

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...