Я пытаюсь получить кадр из видеопотока в формате H.264 на Android. У меня есть функция обратного вызова, которая получает (byte[] video, int size), где видео состоит из пакетов NALU, а int «size» кажется размером видео (я регистрировал их и как video.length, так и размер кажется размером 1024). Я использую этот jcodec, чтобы попытаться декодировать кадр:
ByteBuffer videoBuffer = ByteBuffer.wrap(video);
H264Decoder decoder = new H264Decoder();
Picture out = Picture.create(1920, 1088, ColorSpace.YUV420);
Picture real = decoder.decodeFrame(videoBuffer, out.getData());
Bitmap outputImage = AndroidUtil.toBitmap(real);
Однако видео — это не все видео, а пакеты видео. Как мне собрать эти пакеты, чтобы расшифровать их? Как мне изменить код, чтобы получить полный текущий кадр?