Приветствую.
Вдрух кто знает - выполняю пересжатие из мжпег или х264 снова в х264, затем через локальный интерфейс отправляю в свой же rtsp сервер - никак не удается понять, почему при остановке стрима и его запуске вижу 1-2 секунды предыдущего стрима.
Все делаю через api ффмпега.
Думал кодер нужно сбрасывать через avcodec_flush_buffers
в ответ ошибка Ignoring attempt to flush encoder that doesn't support it
, может быть в декодере х264 накопилось - так нет, для мжпег те же 1-2 секунды предыдущих мусорных кадров, попытался сбросить входящий буфер ртсп сервера через avformat_flush(f)
толку нет, варианты av_write_frame(f, NULL)
avcodec_send_frame(c, NULL)
и тп тоже ничего не сбрасывают.
Да важно - на кодер в начале стрима всегда поступает не сжатый кадр с признаками что он ключевой и типом I, поэтому стрим начинается всегда мгновенно, НО откуда то 1-2 секунды от предыдущего ((