def _on_source_setup(self, element, source): gst_logger.debug('Got source-setup: element=%s', source) if source.get_factory().get_name() == 'appsrc': self._appsrc.configure(source) else: self._appsrc.reset() utils.setup_proxy(source, self._config['proxy'])
def _on_source_setup(self, element, source): gst_logger.debug('Got source-setup: element=%s', source) if source.get_factory().get_name() == 'appsrc': self._appsrc.configure(source) else: self._appsrc.reset() utils.setup_proxy(source, self._config['proxy'])
def _on_source_setup(self, element, source): gst_logger.debug("Got source-setup signal: element=%s", source.__class__.__name__) if source.get_factory().get_name() == "appsrc": self._appsrc.configure(source) else: self._appsrc.reset() if self._live_stream and hasattr(source.props, "is_live"): gst_logger.debug("Enabling live stream mode") source.set_live(True) utils.setup_proxy(source, self._config["proxy"])
def _setup_pipeline(uri, proxy_config=None): src = gst.element_make_from_uri(gst.URI_SRC, uri) if not src: raise exceptions.ScannerError("GStreamer can not open: %s" % uri) typefind = gst.element_factory_make("typefind") decodebin = gst.element_factory_make("decodebin2") pipeline = gst.element_factory_make("pipeline") pipeline.add_many(src, typefind, decodebin) gst.element_link_many(src, typefind, decodebin) if proxy_config: utils.setup_proxy(src, proxy_config) typefind.connect("have-type", _have_type, decodebin) decodebin.connect("pad-added", _pad_added, pipeline) return pipeline
def _setup_pipeline(uri, proxy_config=None): src = gst.element_make_from_uri(gst.URI_SRC, uri) if not src: raise exceptions.ScannerError('GStreamer can not open: %s' % uri) typefind = gst.element_factory_make('typefind') decodebin = gst.element_factory_make('decodebin2') pipeline = gst.element_factory_make('pipeline') pipeline.add_many(src, typefind, decodebin) gst.element_link_many(src, typefind, decodebin) if proxy_config: utils.setup_proxy(src, proxy_config) typefind.connect('have-type', _have_type, decodebin) decodebin.connect('pad-added', _pad_added, pipeline) return pipeline
def _setup_pipeline(uri, proxy_config=None): src = Gst.Element.make_from_uri(Gst.URIType.SRC, uri) if not src: raise exceptions.ScannerError('GStreamer can not open: %s' % uri) if proxy_config: utils.setup_proxy(src, proxy_config) signals = utils.Signals() pipeline = Gst.ElementFactory.make('pipeline') pipeline.add(src) if _has_src_pads(src): _setup_decodebin(src, src.get_static_pad('src'), pipeline, signals) elif _has_dynamic_src_pad(src): signals.connect(src, 'pad-added', _setup_decodebin, pipeline, signals) else: raise exceptions.ScannerError('No pads found in source element.') return pipeline, signals
def _setup_pipeline(uri, proxy_config=None): src = Gst.Element.make_from_uri(Gst.URIType.SRC, uri) if not src: raise exceptions.ScannerError('GStreamer can not open: %s' % uri) if proxy_config: utils.setup_proxy(src, proxy_config) signals = utils.Signals() pipeline = Gst.ElementFactory.make('pipeline') pipeline.add(src) if _has_src_pads(src): _setup_decodebin(src, src.get_static_pad('src'), pipeline, signals) elif _has_dynamic_src_pad(src): signals.connect(src, 'pad-added', _setup_decodebin, pipeline, signals) else: raise exceptions.ScannerError('No pads found in source element.') return pipeline, signals
def _setup_pipeline(uri, proxy_config=None): src = gst.element_make_from_uri(gst.URI_SRC, uri) if not src: raise exceptions.ScannerError('GStreamer can not open: %s' % uri) typefind = gst.element_factory_make('typefind') decodebin = gst.element_factory_make('decodebin2') pipeline = gst.element_factory_make('pipeline') for e in (src, typefind, decodebin): pipeline.add(e) gst.element_link_many(src, typefind, decodebin) if proxy_config: utils.setup_proxy(src, proxy_config) typefind.connect('have-type', _have_type, decodebin) decodebin.connect('pad-added', _pad_added, pipeline) return pipeline
def _setup_pipeline(uri, proxy_config=None): src = Gst.Element.make_from_uri(Gst.URIType.SRC, uri) if not src: raise exceptions.ScannerError('GStreamer can not open: %s' % uri) typefind = Gst.ElementFactory.make('typefind') decodebin = Gst.ElementFactory.make('decodebin') pipeline = Gst.ElementFactory.make('pipeline') for e in (src, typefind, decodebin): pipeline.add(e) src.link(typefind) typefind.link(decodebin) if proxy_config: utils.setup_proxy(src, proxy_config) signals = utils.Signals() signals.connect(typefind, 'have-type', _have_type, decodebin) signals.connect(decodebin, 'pad-added', _pad_added, pipeline) signals.connect(decodebin, 'autoplug-select', _autoplug_select) return pipeline, signals
def _setup_pipeline(uri, proxy_config=None): src = Gst.Element.make_from_uri(Gst.URIType.SRC, uri) if not src: raise exceptions.ScannerError('GStreamer can not open: %s' % uri) typefind = Gst.ElementFactory.make('typefind') decodebin = Gst.ElementFactory.make('decodebin') pipeline = Gst.ElementFactory.make('pipeline') for e in (src, typefind, decodebin): pipeline.add(e) src.link(typefind) typefind.link(decodebin) if proxy_config: utils.setup_proxy(src, proxy_config) signals = utils.Signals() signals.connect(typefind, 'have-type', _have_type, decodebin) signals.connect(decodebin, 'pad-added', _pad_added, pipeline) signals.connect(decodebin, 'autoplug-select', _autoplug_select) return pipeline, signals