def _check(self, song): old_threshold = Gst.debug_get_default_threshold() Gst.debug_set_default_threshold(Gst.DebugLevel.NONE) pipeline = Gst.parse_launch( "uridecodebin uri=%s ! fakesink" % song("~uri")) bus = pipeline.get_bus() pipeline.set_state(Gst.State.PLAYING) try: while 1: message = bus.timed_pop(Gst.SECOND * 10) if not message or message.type == Gst.MessageType.ERROR: if message: debug = message.parse_error()[0].message else: debug = "timed out" # only print a warning for platforms where we control # the shipped dependencies. if sys.platform == "darwin" or os.name == "nt": print_w("GStreamer: Decoding %r failed (%s)" % (song("~format"), debug)) break if message.type == Gst.MessageType.EOS: break finally: pipeline.set_state(Gst.State.NULL) Gst.debug_set_default_threshold(old_threshold)
def _check(self, song): old_threshold = Gst.debug_get_default_threshold() Gst.debug_set_default_threshold(Gst.DebugLevel.NONE) pipeline = Gst.parse_launch("uridecodebin uri=%s ! fakesink" % song("~uri")) bus = pipeline.get_bus() pipeline.set_state(Gst.State.PLAYING) error = None try: while 1: message = bus.timed_pop(Gst.SECOND * 40) if not message or message.type == Gst.MessageType.ERROR: if message: error = message.parse_error()[0].message else: error = "timed out" break if message.type == Gst.MessageType.EOS: break finally: pipeline.set_state(Gst.State.NULL) Gst.debug_set_default_threshold(old_threshold) return error
def _check(self, song): old_threshold = Gst.debug_get_default_threshold() Gst.debug_set_default_threshold(Gst.DebugLevel.NONE) pipeline = Gst.parse_launch( "uridecodebin uri=%s ! fakesink" % song("~uri")) bus = pipeline.get_bus() pipeline.set_state(Gst.State.PLAYING) error = None try: while 1: message = bus.timed_pop(Gst.SECOND * 40) if not message or message.type == Gst.MessageType.ERROR: if message: error = message.parse_error()[0].message else: error = "timed out" break if message.type == Gst.MessageType.EOS: break finally: pipeline.set_state(Gst.State.NULL) Gst.debug_set_default_threshold(old_threshold) return error
def test_gst_debug_level(): gst = _TestGstService5() root_logger = logging.getLogger() root_logger.setLevel(logging.DEBUG) gst._set_gst_debug_level() assert Gst.debug_is_active() assert Gst.debug_get_default_threshold() == 3
def init(librarian): # Enable error messages by default if Gst.debug_get_default_threshold() == Gst.DebugLevel.NONE: Gst.debug_set_default_threshold(Gst.DebugLevel.ERROR) if Gst.Element.make_from_uri(Gst.URIType.SRC, "file:///fake/path/for/gst", ""): return GStreamerPlayer(librarian) else: raise PlayerError( _("Unable to open input files"), _("GStreamer has no element to handle reading files. Check " "your GStreamer installation settings."))
def init(librarian): # Enable error messages by default if Gst.debug_get_default_threshold() == Gst.DebugLevel.NONE: Gst.debug_set_default_threshold(Gst.DebugLevel.ERROR) if Gst.Element.make_from_uri( Gst.URIType.SRC, "file:///fake/path/for/gst", ""): return GStreamerPlayer(librarian) else: raise PlayerError( _("Unable to open input files"), _("GStreamer has no element to handle reading files. Check " "your GStreamer installation settings."))
def ignore_gst_errors(): old = Gst.debug_get_default_threshold() Gst.debug_set_default_threshold(Gst.DebugLevel.NONE) yield Gst.debug_set_default_threshold(old)
def init(librarian): # Enable error messages by default if Gst.debug_get_default_threshold() == Gst.DebugLevel.NONE: Gst.debug_set_default_threshold(Gst.DebugLevel.ERROR) return GStreamerPlayer(librarian)