1

Я пытаюсь использовать FFMpeg для некоторой обработки моих входных видеофайлов, которые затем передаются программному обеспечению эмулятора (пакетному программному обеспечению) для дальнейшей обработки. Эмулятор - это в основном программное обеспечение для пакетирования. Но независимо от того, что это, оригинальный видеофайл, который работает, прилагается. Создатель файла сказал, что он использовал инструмент bento4 для создания файла. Чем отличается этот инструмент от FFmpeg?

Проблема в том, что эмулятор может читать исходный видеофайл, но когда я просто использую команду ffmpeg -i input.video -c copy output.mp4 , хотя он должен по существу копировать все конфигурации, эмулятор не может читать и обрабатывать новые файл.

Вот копия оригинального файла .mp4 который отлично работает в эмуляторе.

Я использовал инструмент mediainfo для сравнения деталей двух файлов и заметил, что, хотя все конфиги, связанные с видеокодеком, одинаковы, существуют некоторые различия в размерах заголовков, которые, вероятно, вызывают проблемы. Есть ли способы заставить FFmpeg хранить информацию заголовков (кроме кодеков)? Или, может быть, есть другие проблемы? В любом случае, выходное видео не полностью совпадает.

ОБНОВЛЕНИЕ: я все еще борюсь с проблемой. Я посмотрел код эмулятора, и он анализирует заголовки MOOV и фрагментов для получения информации. Используя программное обеспечение MP4 explorer, я заметил, что в моем сгенерированном файле .mp4 для всех moof.traf.trun длительность выборки равна 0, но в поле заголовка фрагмента дорожки он устанавливает значение default_sample_duration 512. В то время как в рабочем файле нет default_sample_duration , и каждый отдельный образец имеет продолжительность 512 размера. Я думаю, это может быть проблемой. Теперь есть ли способы сделать его оригинальным?

1 ответ1

2

Если под заголовком вы подразумеваете блок / атом MOOV, то ffmpeg всегда будет создавать новый блок. Он не может копировать коробки или их содержимое. Ваша команда говорит FFmpeg демультиплексировать все потоки из исходного файла и повторно смешать их в новый контейнер.

Можете ли вы быть конкретным в том, что ищет ваш эмулятор?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .