Я сейчас внедряю RTMP-сервер, и все работает, кроме потокового видео. Я могу без проблем передавать аудио (используя OBS для потоковой передачи) и воспроизводить его через VL C. Проблема в том, что VL C воспроизводит аудио, но не видео. Сейчас я пересылаю все аудио и видео сообщения, которые я получаю от OBS, я беру исходную полезную нагрузку (аудио / видео данные) и вставляю блок Type 0, так как я видел, что почти каждая реализация делает это. Я не знаю, пропускаю ли я какую-то обработку, которая должна выполняться для видеоданных.
Если я пытаюсь воспроизвести с помощью ffmpeg (сохранение потока RTMP в файл FLV), то я получаю эти выходные данные:
[NULL @ 000001eb053ed440] missing picture in access unit with size 5209
[AVBSFContext @ 000001eb053ecbc0] No start code is found.
rtmp://192.168.1.2/app/publish: could not find codec parameters
Input #0, flv, from 'rtmp://192.168.1.2/app/publish':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Data: none
Stream #0:1: Video: h264, none, 1k tbn
Output #0, flv, to 'av.flv':
Output file #0 does not contain any stream
Это говорит missing picture in access unit with size 5209
, No start code is found
и could not find codec parameters
. Что мне здесь не хватает? Я знаю, что пересылаю полезную нагрузку в точности так, как получил на своем сервере, я даже сделал проверку ha sh на полезную нагрузку видео, которую я получаю, и ту, которую я отправляю, и она точно такая же. Любая помощь будет принята с благодарностью.