git.slaskete.net
/
python-gstreamer-examples
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
f85549e
)
Fixes some bug, probably?
master
author
Einar Jørgen Haraldseid
<einar@haraldseid.net>
Thu, 14 Feb 2019 21:18:02 +0000
(22:18 +0100)
committer
Einar Jørgen Haraldseid
<einar@haraldseid.net>
Thu, 14 Feb 2019 21:18:02 +0000
(22:18 +0100)
example5.py
patch
|
blob
|
history
diff --git
a/example5.py
b/example5.py
index b77539829bdaf9b601f4179185ae44512b016c10..b252a1741c3b5a1160b20b0d44740bb11d050673 100755
(executable)
--- a/
example5.py
+++ b/
example5.py
@@
-61,12
+61,12
@@
class Main:
# src3
self.src3 = Gst.ElementFactory.make("rtmpsrc", "src3")
self.src3.set_property("location", stream1)
# src3
self.src3 = Gst.ElementFactory.make("rtmpsrc", "src3")
self.src3.set_property("location", stream1)
-
#
self.src3caps = Gst.ElementFactory.make("capsfilter", "src3caps")
-
#
self.src3caps.set_property("caps", xrawcaps)
+ self.src3caps = Gst.ElementFactory.make("capsfilter", "src3caps")
+ self.src3caps.set_property("caps", xrawcaps)
self.src3dec = Gst.ElementFactory.make("decodebin", "src3dec")
self.src3crop = Gst.ElementFactory.make("aspectratiocrop", "src3crop")
self.src3crop.set_property("aspect-ratio", Gst.Fraction(16, 9))
self.src3dec = Gst.ElementFactory.make("decodebin", "src3dec")
self.src3crop = Gst.ElementFactory.make("aspectratiocrop", "src3crop")
self.src3crop.set_property("aspect-ratio", Gst.Fraction(16, 9))
- self.src3crop.set_property("
async-handling
", True)
+ self.src3crop.set_property("
message-forward
", True)
self.src3croppad = self.src3crop.get_static_pad("sink")
self.src3scale = Gst.ElementFactory.make("videoscale")
self.src3scalecaps = Gst.ElementFactory.make("capsfilter", "src3scalecaps")
self.src3croppad = self.src3crop.get_static_pad("sink")
self.src3scale = Gst.ElementFactory.make("videoscale")
self.src3scalecaps = Gst.ElementFactory.make("capsfilter", "src3scalecaps")
@@
-97,9
+97,9
@@
class Main:
self.src2dec.connect("pad-added", self.OnPadAdded, self.src2pad, self.videomix)
self.pipeline.add(self.src3)
self.src2dec.connect("pad-added", self.OnPadAdded, self.src2pad, self.videomix)
self.pipeline.add(self.src3)
-# self.pipeline.add(self.src3caps)
self.pipeline.add(self.src3dec)
self.pipeline.add(self.src3dec)
- self.src3dec.connect("pad-added", self.OnPadAdded, self.src3croppad, self.src3scale)
+ self.src3dec.connect("pad-added", self.OnPadAdded, self.src3croppad, self.src3crop)
+ self.pipeline.add(self.src3crop)
self.pipeline.add(self.src3scale)
self.pipeline.add(self.src3scalecaps)
self.pipeline.add(self.src3scale)
self.pipeline.add(self.src3scalecaps)
@@
-119,18
+119,14
@@
class Main:
if not self.src2caps.link(self.src2dec):
print("Failed to link src2caps to src2dec")
if not self.src2caps.link(self.src2dec):
print("Failed to link src2caps to src2dec")
-# if not self.src3.link(self.src3caps):
-# print("Failed to link src3 to src3caps")
if not self.src3.link(self.src3dec):
print("Failed to link src3 to src3dec")
if not self.src3.link(self.src3dec):
print("Failed to link src3 to src3dec")
+ if not self.src3crop.link(self.src3scale):
+ print("Failed to link src3crop to src3scale")
if not self.src3scale.link(self.src3scalecaps):
print("Failed to link src3scale to src3scalecaps")
if not self.src3scale.link(self.src3scalecaps):
print("Failed to link src3scale to src3scalecaps")
- if not self.src3scalecaps.link(self.src3crop):
- print("Failed to link src3scalecaps to src3crop")
- if not self.src3crop.link(self.src3cropcaps):
- print("Failed to link src3crop to src3cropcaps")
- if not self.src3cropcaps.link(self.videomix):
- print("Failed to link src3cropcaps to videomix")
+ if not self.src3scalecaps.link_pads("src", self.videomix, "sink_3"):
+ print("Failed to link src3scalecaps to videomix")
# Set up a bus to our pipeline to get notified when the video is ready
self.bus = self.pipeline.get_bus()
# Set up a bus to our pipeline to get notified when the video is ready
self.bus = self.pipeline.get_bus()
@@
-160,6
+156,7
@@
class Main:
def OnPadAdded(self, element, pad, sink, target):
print("Dynamic pad for " + element.name + " added, linking to " + target.name)
def OnPadAdded(self, element, pad, sink, target):
print("Dynamic pad for " + element.name + " added, linking to " + target.name)
+ print(sink.name)
pad.link(sink)
element.link(target)
pad.link(sink)
element.link(target)