Выход ffmpeg стереоскопический, дублируя один вход - PullRequest
0 голосов
/ 02 сентября 2018

Я хочу, чтобы мое выходное видео на рабочем столе использовалось с гарнитурой VR, поэтому мне нужно преобразовать вывод X11 в левый и правый глаз (но как в одно видео), он не будет 3D, так как левый и правый глазной ввод такой же, но это нормально. Я думаю, что я почти там, но не могу заставить ffmpeg рассматривать один источник как два входа. Вот что у меня пока>

ffmpeg -f x11grab -framerate 60  -video_size 1920x1080 -i :0.0 -i :0.0  -filter_complex "[0:v] scale=iw/2:ih/2, pad=2*iw:ih [left]; [1:v] scale=iw/3:ih/3, fade=out:300:30:alpha=1 [right]; [left][right] overlay=main_w/2:0 [out]" -vcodec libx264 -crf 16 -preset ultrafast sidebyside.mp4

Приведенная выше команда должна создать одно выходное видео с дубликатом моего дисплея для левого и правого глаза в левой и правой части видео.

Команда ffmpeg, указанная выше, завершается с

: 0.0: протокол не найден Вы имели в виду file :: 0.0?

Заранее спасибо

1 Ответ

0 голосов
/ 02 сентября 2018

-f x11grab -framerate 60 -video_size 1920x1080 также необходимо вставить перед вторым входом. Но это должно быть сделано по-другому, чтобы сохранить синхронизацию

ffmpeg -f x11grab -framerate 60 -video_size 1920x1080 -i :0.0 -filter_complex "[0:v]split=2[l][r];[l]scale=iw/2:ih/2, pad=2*iw:ih [left]; [r] scale=iw/3:ih/3, fade=out:300:30:alpha=1 [right]; [left][right] overlay=main_w/2:0 [out]" -vcodec libx264 -crf 16 -preset ultrafast sidebyside.mp4

(Вы масштабируете правую сторону до меньших размеров, но я предполагаю, что это предусмотрено)

...