Я новичок в gstreamer и его разработке.Я пытаюсь смешивать потоки RTP с помощью Gstreamer Python.Клиент отправляет различные источники видеотеста, и смешивание этих потоков должно происходить на стороне приемника с использованием RTP.Это должно быть возможно по крайней мере для четырех участников.
На стороне получателя уже есть видеотест, уже связанный с ним, который будет отображаться первым.Когда получатель получит источники видеотеста, необходимо произвести смешение источников видеотеста и отобразить их на заднем плане видеотеста.
Вот код для стороны приемника "receive.py": http://pastebin.com/dM2LcNM2И
Вот код для клиентской стороны "send_client.py": http://pastebin.com/33edcQ40
Я получаю сообщение об ошибке типа:
ankit@fh:~/$ ./receiver4.py
Started...
Running...
new ssrc
session 0
ssrc 3217594798
3217594798
filter: /GstPipeline:server/GstCapsFilter:filter (__main__.GstCapsFilter) || Type:: <class '__main__.__main__.GstCapsFilter'>
srcpad1: /GstPipeline:server/GstUDPSrc:udpsrc0.GstPad:src (gst.Pad) || Type::: <type 'gst.Pad'>
sinkpad1: None
Traceback (most recent call last):
File "./receiver4.py", line 132, in on_new_ssrc
lres = gst.Pad.link(srcpad1, sinkpad1)
TypeError: GstPad.link() argument 1 must be gst.Pad, not None
Я не могучтобы понять, почему я получаю 'None' по запросу 'sinkpad1'.В документации указано, что панель загрузки updsrc «по запросу».
PS: Пожалуйста, используйте код для ссылки на синтаксис и логику, которые я использовал для получения «раковины1»
Я не могучтобы запустить его.Я много боролся, чтобы найти решение.Пожалуйста, кто-нибудь, помогите мне найти логическую ошибку.Заранее спасибо.