FFmpeg ищет в потоках Mpeg4

В настоящее время я пытаюсь разработать плеер, способный выполнять точный поиск на основе элементарного видеопотока mpeg4. Я нахожусь в стадии планирования и пытаюсь решить, как поступить, и я хотел бы получить несколько советов, прежде чем начать. Некоторые вещи, на которые стоит обратить внимание:

  • Я буду иметь полный контроль над кодировкой файла.
  • Исходный контент будет только I-frame
  • FFmpeg - библиотека кодирования / декодирования
  • Аудио может быть проигнорировано на данный момент. Я буду иметь дело только с видео потоком.
  • Точный поиск кадра должен быть реализован

Поэтому, когда я кодирую содержимое, могу ли я запросить, какой тип кадра (I, P, B) был закодирован, чтобы я мог создать дополнительный индексный поток для операции поиска. Если нет, я могу запросить GOP после того, как он был закодирован, чтобы найти I-кадр.

Что касается воспроизведения, пользователь должен иметь возможность печатать в определенное время и переходить к этому кадру (ближайший I-кадр будет подходящим сейчас). Можно предположить, что GOP закрыт, а длина довольно короткая (например, 15 кадров). Мои мысли состоят в том, чтобы запросить индексный поток, который я создал во время кодирования, и определить соответствующее расстояние в потоке в течение запрошенного времени.

Я не уверен, как искать с помощью библиотеки FFMpeg при воспроизведении файлов.

Кто-нибудь делал что-то подобное, и если да, можете ли вы дать краткое объяснение того, как вы это сделали?

0 ответов

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