Горизонтальное отображение двух видео рядом и экспорт в одно видео

Чего я пытаюсь достичь: программно (используя какой-то скрипт) объединить два разных видео в одно видео, где видео отображаются рядом, а звук из обоих видео воспроизводится одновременно.

Я нашел по крайней мере два способа отображения двух видео рядом, но в каждом из них у меня есть другая проблема, которая затрудняет завершение процесса:

  1. Avisyth и Avs2Avi:
    Avisyth действительно упрощает процесс. С помощью такого простого скрипта Avisyth вы сможете воспроизводить два видео рядом:

    video1=AVISource("d:\file1.avi")
    video2=AVISource("d:\file2.avi")
    StackHorizontal(video1,video2)


    Создать новый выходной файл можно с помощью avs2avi.
    Проблема здесь в том, что я не могу воспроизвести ни один avi-файл с помощью avisyth, потому что я получаю сообщение «AviSource не может» Не найдите декомпрессор для сообщения "fourcc xvid". Я искал решения этой проблемы, но ничего не помогло. GSpot говорит, что у меня есть все необходимые кодеки и похоже я ничего не могу сделать. Поскольку я не могу запустить настоящие видео, я не знаю, воспроизводятся ли в финальном видео звуки из обоих видео. Avisyth установлен правильно, и я могу запустить следующий скрипт StackHorizontal (версия, версия).

  2. ffmpeg
    Прекрасно работает с двумя видео и финальным файлом, НО я не получаю звук из обоих видео, а только из первого. Я узнал, что решение добавить звук из второго видео будет заключаться в использовании libfaac в командной строке, например:

ffmpeg.exe -i video1.mp4 -vf "[in] scale=iw/2:ih/2, pad=2*iw:ih [left]; movie=video2.mp4, scale=iw/3:ih/3 [right]; [left][right] overlay=main_w/2:0 [out]" -c:a libfaac -b:v 768k Output.mp4

но я всегда получаю сообщение об ошибке, что кодировщик libfaac не может быть найден. Я скачал libfaac.dll, но безрезультатно.

Есть ли решение любой из этих проблем? Есть ли другой способ программно сделать одно видео из двух видео, которые воспроизводятся рядом? Заранее спасибо.


person MikeL    schedule 21.03.2013    source источник
comment
libfaac требует, чтобы ffmpeg был скомпилирован с --enable-nonfree, что приводит к невозможности его распространения: вот почему Zeranoe и другие, которые предоставляют скомпилированные сборки, не могут включать поддержку libfaac. Вместо этого вы можете использовать собственный кодировщик FFmpeg AAC (но качество не очень хорошее на низких и средних битрейтах): -c:a libfaac -strict experimental -b:a 192k. Хотя я не уверен, что ваша команда также будет включать звук со второго входа.   -  person llogan    schedule 21.03.2013


Ответы (1)


Поскольку использование Avisynth не представляет для вас проблемы, вы можете просто использовать другой исходный фильтр. FFMS2 должен очень хорошо отвечать всем требованиям - он полностью автономен и не зависит от каких-либо системных декодеров. как это делает AviSource.

person Daiz    schedule 09.04.2013