#c# #gstreamer
Вопрос:
У меня есть http-источник, из которого я загружаю файлы .mp4 в виде необработанных байтов. Будущая цель состоит в том, чтобы продолжить их потоковую передачу с использованием RTP и UDP, но сейчас я хотел бы просто сохранить их в одном локальном файле.
Прямо сейчас это хорошо работает только для одного файла, но в тот момент, когда я хочу транслировать второй, он ломается. Сохраненный файл всегда является только первым файлом, все остальные файлы игнорируются.
Мой текущий конвейер выглядит так: appSrc->decodebin->x264enc->qtmux->filesink
appSrc настроен на автоматическую отправку события EOS, все остальное по умолчанию. В моем коде есть собственный вызов EOS, когда я останавливаю потоковую передачу.
Байты, загружаемые в appSrc.PushBuffer
метод, в значительной степени являются байтами файла, поэтому теоретически мне не понадобился бы декодер для одного файла, но поскольку моя цель-объединить файлы, я счел это необходимым.
Я попробовал элемент concat и multifilesrc, но безуспешно. Как я могу объединить байтовые файлы в один файл?