GStreamer, приостанавливая видео, одновременно снимая кадры - PullRequest
0 голосов
/ 09 апреля 2020

У меня есть видео (без звука), которое я могу воспроизвести с помощью gstreamer с этим конвейером: filesrc location=out.ogv ! decodebin ! videoconvert ! videoscale name=scal ! xvimagesink. Это 20 секунд. У меня 25-секундный аудиофайл, который я хочу воспроизвести одновременно. С самого начала я хочу, чтобы звук воспроизводился, а видео воспроизводилось, как обычно, в течение 10 с, затем видео должно зависать / приостанавливаться в течение 5 с, пока звук продолжает воспроизводиться, затем возобновить воспроизведение в течение следующих 10 с. Это делает видео 25-х с аудио, где всегда есть что-то на экране. В течение 5 секунд, когда видео заморожено, должен отображаться последний воспроизводимый кадр из видео. Как будто пользователь нажал паузу. Мне нужно делать это только с существующими видеофайлами, а не с веб-камер или из сетевого источника.

Возможно ли это с помощью gstreamer? imagefreeze будет принимать неподвижное изображение и выводить кадры с частотой кадров. Но это просто делает неподвижное изображение.

Я использую gstreamer 1.15.5 и python 3.6.9.

Это упрощение проблемы, в конце концов я хочу приостановить видео, затем «увеличить» часть видео, уменьшить, затем сделать паузу. Я думаю, что могу сделать увеличение с videoscale, но я не знаю, как «приостановить» видео

...