Я работаю над задачей, для которой клиенту необходим временной код smpte drop frame для встраивания в видео mpeg1 / 2, которое мое программное обеспечение будет захватывать и кодировать. У меня был успех с кодированием с использованием обоих openCV и ffmpeg (windows). У меня проблемы с встраиванием временного кода.
Я потратил около месяца на изучение этого вопроса и не смог найти решение.
Есть ли программное обеспечение, которое может делать то, что мне нужно?
В голове я рисую видеофайл без тайм-кода и открываю с помощью плеера. Отображает время в чч: мм: сс: мс. Тогда я представляю, что видео с временным кодом будет отображать информацию о времени в формате чч: мм: сс: ff. Это не вариант. Многие видеоплееры даже не поддерживают отображение тайм-кода.
Как тайм-код хранится в файлах mpeg1 / 2? Я думал, что он был сохранен для каждого кадра и будет так просто, как:
frameToEncode->setTimecode(SMPTE_DROPFRAME, framenum);
MPEGEncoder::encodeFrame(frameToEncode);
Я искал в интернете ответ на этот вопрос. Может быть, я ищу с неправильными терминами, но я не могу найти четкое решение, чтобы просто вставить временной код в мой видеофайл.
Я пытался использовать ffmpeg для этого, но не смог подтвердить / опровергнуть мои попытки. Могу ли я использовать программное обеспечение, которое сообщит мне, что я вложил тайм-код в мой видеофайл? Я пытался использовать Adobe Premiere Pro и Roxio Creator Pro безуспешно.
Наконец, возможно ли то, что мой клиент спрашивает? Можно ли встроить тайм-код. Я ошеломлен отсутствием информации, которую мне удалось найти по этому вопросу, и начинаю думать, что то, что требуется, даже невозможно. Если это возможно, есть ли коммерческая или бесплатная SDK / библиотека, способная на это?
TL; DR: мне нужно встроить тайм-код в видеофайл mpeg1 / 2, который я собираю и кодирую на лету. Как тайм-код хранится в файлах mpeg1 / 2? Как глобальный заголовок? За кадр? Что-то другое? Мне нужно программное обеспечение, которое может проверить наличие встроенного тайм-кода. Возможно ли то, что клиент спрашивает? Если да, есть ли коммерческий или бесплатный SDK, который может решить мою задачу?
Примечание: мне нужна библиотека c / c ++, способная встраивать тайм-код.
Задача ещё не решена.
Других решений пока нет …