Я видел странное поведение при поиске во время воспроизведения видео, я создал видео с помощью DirectShow - проблема в Windows 7 Only (W8/W10 отлично работает).Установка интервала ключевого кадра в кодере DirectShow
График построен так:
Source(Webcam) -> H264 Encoder -> MP4 Mux -> File Writer
Так я использую H264 кодировщик, однако по некоторым причинам кодер удаляет все ключевые кадры (SYNC) после фильтра датчика. Используя еще один старый H264 Encoder, я вижу, что он отлично устанавливает кадр (синхронизацию) каждые 20 кадров, а выходной файл этого кодера работает безупречно во всех операционных системах.
Поэтому я подозреваю, что проблема заключается в том, что кодировщик не правильно задает ключевые кадры, и поэтому не сможет корректно искать (однако Windows 8 и 10 могут понять, как правильно искать файл без ключевых кадров, а не Windows 7)
Использование VLC/WMP на Windows 7 при поиске в файле файл будет действовать странно (нет видео в течение долгого времени, серый некачественно видео более 10 секунд, вдруг остановка видео ..)
Так мой вопрос в том, как установить интервал ключевого кадра в фильтре кодирования в DirectShow?
Редактировать: Еще одна интересная вещь, которую я обнаружил, заключается в том, что когда я ищу, этот странный вывод отображается через фильтр анализатора (вставленный сразу после декодера) во время воспроизведения.
Николас, из любопытства, какой H264 кодер вы используете? –
@MikeDinescu Я использую VisioForge H264 – Nicholas
Поскольку VisioForge, похоже, является коммерческим продуктом, я думаю, что лучше всего обратиться к разработчикам и запросить документацию - и в случае, если функция недоступна (или не реализована правильно), что они добавляют/фиксируют это. –