Подтвердить что ты не робот

Запланированная пауза в Гнонлине

Я использую Gnonlin для воспроизведения двух видео. В какой-то момент я хотел бы приостановить одно видео и запустить другое. Однако я не хочу вручную останавливать конвейер, так как другое видео также будет приостановлено.

Например:

self.video[0].set_property("location", LOCATION_VIDEO1)
self.video[0].set_property("start", 0 * gst.SECOND)
self.video[0].set_property("duration", 5 * gst.SECOND)
self.video[0].set_property("media-start", 0 * gst.SECOND)
self.video[0].set_property("media-duration", 5 * gst.SECOND)

Это видео работает в течение пяти секунд. Что я могу сделать, чтобы приостановить его или остановить воспроизведение этого видео на следующие пять секунд? Есть ли способ показать один и тот же кадр в течение пяти секунд?

4b9b3361

Ответ 1

Основываясь на этой статье http://www.jonobacon.com/2006/12/27/using-gnonlin-with-gstreamer-and-python/, если я правильно понимаю, думаю, вы можете написать:

self.video[0].set_property("location", LOCATION_VIDEO1)
self.video[0].set_property("start", 0 * gst.SECOND)
self.video[0].set_property("duration", 5 * gst.SECOND)
self.video[0].set_property("media-start", 0 * gst.SECOND)
self.video[0].set_property("media-duration", 0 * gst.SECOND)

Чтобы получить замороженный кадр в течение 5 секунд. Это может сработать для вас... в качестве альтернативы это может работать:

self._playbin.set_state(gst.STATE_PAUSED) 

Кроме этого, у меня нет предложений - документация кажется скудной. Если вы можете указать мне на API, у меня может быть лучшая идея.