2012-01-04 1 views
2

Я использую Qt & OpenCV для записи видео и QAudioInput для записи аудио в формат wav. Я хочу объединить их в один видеофайл. Как я могу это сделать? Я так много исследовал, но я не могу найти команду, чтобы выполнить это.Команда FFMPEG для объединения WAV-файла и видеофайла?

Я использую как Windows, так и Mac.

ответ

0

FYI, эта операция выполняется через CMD-линию in this thread. Этот подход может превратиться в легкий взлом, так как вы можете вызвать эту команду, используя system().

Но если вы все еще хотите сделать это программно, я предлагаю вам взглянуть на Dranger's FFmpeg tutorials. Он предоставляет 8 интересных руководств, которые показывают, как делать простые вещи, от моментальных снимков видео до более сложных материалов, таких как запись простого видеопроигрывателя с аудио/видеосинхронизацией.

В этих учебниках рассказывается, как работать независимо от аудио- и видеопотоков, что вам нужно сделать: прочитать аудиопоток из WAV-файла и затем вставить его в качестве аудиопотока видеофайла.

Возможно, нет прямого отношения к тому, на что вы нацелены, но this answer демонстрирует, как использовать FFmpeg для извлечения аудиопотока одного файла и воспроизведения его с помощью SDL, одновременно используя OpenCV для извлечения видеокадров и отображения их в SDL окно.

+0

Да, я понял, я с успехом использовал, я использую Commanline: ffmpeg.exe -i 1.wav -i 1.avi -acodec copy -vcodec copy output.avi, но у него есть 1 проблема: после объединения, когда i воспроизводить видео, а аудио и видео не синхронизировать, например: звуки, возникающие перед показом видео, как синхронизировать аудио и видео запись ??? – ALexF