Я пытаюсь создать конвейер gstreamer с rtpbin для потоковой передачи веб-камеры в обе стороны (видеофон).Однако я даже не могу заставить rtpbin работать с простым фрагментом, подобным приведенному ниже, который просто берет исходный код веб-камеры и передает его в потоковом режиме, тогда как другой udpsrc захватывает RTP-пакеты и отображает их.Все localhost.Когда разделено на две трубы и запущено отдельно, это работает.Это, однако, нет.Я чувствую, что это связано с многопоточностью, однако я застрял здесь, потому что никакая очередь не работала для меня до сих пор.По сути, мне нужно отобразить входящий видеопоток и передать видеопоток с моей веб-камеры удаленной стороне.
gst-launch -v \ gstrtpbin name = rtpbin \ udpsrc caps = "application / x-rtp, media = (строка) видео, тактовая частота = (int) 90000, имя-кодировки = (строка) H263 "порт = 5000!rtpbin.\ rtpbin.!rtph263depay!ffdec_h263!ffmpegcolorspace!xvimagesink \ v4l2src!video / x-raw-yuv, частота кадров = 30/1, ширина = 320, высота = 240!видеомасштабвидеорейт!"video / x-raw-yuv, ширина = 352, высота = 288, частота кадров = 30/1"!ffenc_h263!rtph263pay!rtpbin.\ rtpbin.!порт udpsink = 5000