GStreamer Playbin скорость видео слишком высокая - PullRequest
0 голосов
/ 26 мая 2018

Я пытаюсь создать виртуальную веб-камеру, используя GStreamer и v4l2loopback.Проблема в том, что я хочу использовать Playbin, но скорость видео слишком высокая, когда я его использую.Например, это происходит, когда я выполняю следующую команду:

gst-launch-1.0 -v playbin uri=file:/vagrant/test.avi 
video-sink="videoconvert 
            ! videoscale 
            ! video/x-raw,format=YUY2,width=320,height=320 
            ! v4l2sink device=/dev/video0"

Добавление «framerate = 20/1» к заглавным буквам приводит к появлению сообщения «Не согласовано с ошибкой», а установка «30/1» работает, но нене помогло решить проблему со скоростью.

С другой стороны, я получаю нормальную скорость при выполнении следующей команды:

 gst-launch-1.0 -v filesrc location=/vagrant/test.avi 
       ! avidemux 
       ! decodebin 
       ! videoconvert 
       ! videoscale 
       ! "video/x-raw,format=YUY2,width=320,height=320" 
       ! v4l2sink device=/dev/video0

Я перепробовал много комбинаций с фильтрамииз последнего примера с Playbin, но ни один из них не помог.

Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 12 июня 2018

Проблема заключалась в том, что виртуальная машина работала поверх VirtualBox.Если быть более точным - у меня было включено 3D-ускорение, в результате чего все видео воспроизводились со скоростью 2x.

Отключение 3D-ускорения путем установки --accelerate3d=off помогло решить проблему.

...