aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xexample-scripts/gstreamer/ingest.py (renamed from clients/source/ingest.py)26
1 files changed, 15 insertions, 11 deletions
diff --git a/clients/source/ingest.py b/example-scripts/gstreamer/ingest.py
index 2b63dde..14ce043 100755
--- a/clients/source/ingest.py
+++ b/example-scripts/gstreamer/ingest.py
@@ -1,16 +1,23 @@
#!/usr/bin/env python3
# ingest.py
-# source client for Voctomix
+"""
+Source client for Voctomix.
+Features:
+ Retrieves audio and video-caps config from core.
+ Uses core's clock.
+ Mix and match audio and video sources muxed into one streem.
+ Can display video locally, including frame count and fps.
+ Defaults to test audio and video sent to local core.
-import sys
+"""
+import argparse
import gi
-import signal
import os
+import signal
import socket
-
-import argparse
+import sys
gi.require_version('Gst', '1.0')
from gi.repository import Gst, GstNet, GObject
@@ -19,12 +26,11 @@ from gi.repository import Gst, GstNet, GObject
GObject.threads_init()
Gst.init([])
-# this is kinda icky.
+# this is to use the same code tha gui uses to get config from core
sys.path.insert(0, '../..' )
sys.path.insert(0, '.' )
import voctogui.lib.connection as Connection
-# import lib.clock as ClockManager
def mk_video_src(args, videocaps):
@@ -66,6 +72,8 @@ def mk_video_src(args, videocaps):
"""
elif args.video_source == 'hdmi2usb':
+ # https://hdmi2usb.tv
+ # Note: this code works with 720p
video_src = """
v4l2src {video_device} name=videosrc !
queue !
@@ -184,10 +192,6 @@ def get_server_caps():
return server_caps
- # obtain network-clock
- ClockManager.obtainClock(Connection.ip)
-
-
def run_pipeline(pipeline, args):
core_ip = socket.gethostbyname(args.host)