Как я могу определить, какой файл FFmpeg используется
388
a_sid
Я хочу изучить код для декодера MJPEG. Я пытаюсь сделать это, используя команды запуска для декодера, а затем пытаюсь определить, какой файл выполняет задачу декодирования.
Я выполнил следующую команду:
ffmpeg -r 10 -i heli.mjpg -vcodec copy newheli.avi
Это произвело следующий вывод:
[avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 372, current: 149; changing to 373. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 373, current: 150; changing to 374. This may result in incorrect timestamps in the output file. .... .... .... .... .... .... [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 536, current: 215; changing to 537. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 537, current: 215; changing to 538. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 538, current: 216; changing to 539. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 539, current: 216; changing to 540. This may result in incorrect timestamps in the output file. [avi @ 0x1818040] Non-monotonous DTS in output stream 0:0; previous: 540, current: 216; changing to 541. This may result in incorrect timestamps in the output file. frame= 542 fps=0.0 q=-1.0 Lsize= 2720kB time=00:00:54.20 bitrate= 411.1kbits/s video:2701kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.686601%
Начальная часть вывода не видна. Как я могу найти, какой файл .c выполняет декодирование MJPEG? Как я могу изолировать его, внести изменения в .c, а затем запустить его?
РЕДАКТИРОВАТЬ:
В идеале я хотел бы перенести код для декодера MJPEG в IDE, такую как Qt, и проанализировать там код. Я изо всех сил пытаюсь понять, как я могу запустить декодер MJPEG там.
самый прямой путь - запустить его в отладчике (например, `gdb`). вам понадобится отладочный исполняемый файл; в зависимости от платформы, которая может включать в себя установку пакета `-dbg` или локальную компиляцию` ffmpeg`.
quixotic 7 лет назад
0
@quixotic Спасибо за ответ. Что вы подразумеваете под _компиляцией `ffmpeg` localally_? Я могу запустить `ffmpeg`, и это потому, что я его уже скомпилировал. Я не очень знаком с этим, поэтому, пожалуйста, извините, если мой вопрос слишком прост.
a_sid 7 лет назад
0
часто, когда программное обеспечение устанавливается из предварительно собранных двоичных файлов, упаковщик удаляет символы отладки из исполняемого файла. это экономит место, но делает отладчики менее понятными. вам может понадобиться перекомпилировать `ffmpeg`, чтобы получить их; используйте флаг `--disable-stripping` при повторном запуске скрипта` configure`.
quixotic 7 лет назад
0
@quixotic Спасибо за вашу помощь. Я выполнил команду. Как я могу использовать это, чтобы передать код для декодера MJPEG в Qt, а затем декодировать файлы mjpeg оттуда?
a_sid 7 лет назад
0
0 ответов на вопрос
Похожие вопросы
-
6
Как я могу восстановить поврежденный файл AVI?
-
5
Как я могу преобразовать презентацию Powerpoint в видеофайл (AVI или WMV)?
-
10
Какое лучшее программное обеспечение для разделения и объединения файлов AVI?
-
-
2
Как я могу кодировать файл VRO в файл AVI
-
1
Как я могу исправить проблемы с чересстрочной дрожью видео при воспроизведении на DVD-плеерах? (Микш...
-
6
Как увеличить громкость для файла avi
-
1
Как просматривать видео на veoh.com с помощью HT03-A Android
-
3
Записать сезон AVI на DVD-плеер без DivX
-
2
Как мне найти кодек для AVI?
-
1
Проблема синхронизации аудио и видео в Windows 7 Media Center