#rtsp #mpeg-4
#rtsp #mpeg-4
Вопрос:
Я пытаюсь извлечь каждый кадр из потока rtsp mp4 и преобразовать его в формат jpeg / gif с помощью ffmpeg. Я получаю заголовок sdp 000001b0.....000001b5
и добавляю его в массив байтов, затем записываю кадр, начиная с 000001b6
и добавляя его в массив байтов.
Когда я сбрасываю его в файл (.mpg) и использую ffmpeg, он выдает ошибки и не конвертирует. мой заголовок выглядит так 000001B008000001B58913000001000000012000C488BA98514043C1463F
, и после этого я добавляю кадр (начиная с 000001b6
).
Ответ №1:
Я сделал нечто подобное с FFMPEG, и кажется, что данные кадра, которые вы получаете из FFMPEG, уже содержат заголовок кадра, который является всем, что вам нужно для перекодирования данных. Пожалуйста, убедитесь, что вы декодируете данные mp4 в формат raw (например, RGB24), затем кодируете их в формат пикселей, который ожидает кодировщик JPEG / GIF (возможно, формат YUV), используя libswscale, перед передачей данных кодировщику.
Ответ №2:
В зависимости от кодека вам может не понадобиться ничего добавлять, или вам может потребоваться добавить много..
Это называется де-пакетизацией, а MPEG4-ES не имеет модели пакетизации… H264 имеет много в зависимости от профиля.
Проверьте RFC..
Вам должны помочь 3016 или 3640.