Directshow MPEG2 текст наложения без декодирования

Я нашел несколько фильтров DirectShow, которые выполняют наложение текста, но они всегда строят этот график:

исходный код mpeg2 (только видео) -> декодер mpeg2 -> оверлей -> (некоторый кодировщик) ... -> средство записи файлов

Возможно ли (также с помощью стороннего фильтра) в directshow создать наложение текста без декодирования потока mpeg2?

исходник mpeg2 (только видео) -> наложение -> средство записи файлов

Поскольку процесс кодирования очень критичен для процессора (мне нужно обрабатывать около 6 или 8 видео в режиме реального времени), а запись декодированных файлов без сжатия занимает около 170 МБ (320x240) каждые 2 минуты на файл.

Спасибо

1 ответ

Вы не можете сжечь оверлей на видео, не расшифровав видео сначала. Но у вас может быть текстовый поток в файле, который отображается и накладывается во время воспроизведения. Пользовательский фильтр для декодирования был бы самым простым, и вы должны были бы реализовать IStreamBuilder на выходном выводе пользовательского фильтра, чтобы подключить его к вторичному входу VMR при построении графика. Или вы можете закодировать его в распознанном формате подписи, а затем выбрать проигрыватель, который поддерживает этот формат.

г

Другие вопросы по тегам