All pastes #633294 Raw Edit

Meins

public text v1 · immutable
#633294 ·published 2007-07-25 16:24 UTC
rendered paste body
    def uri_schemes__get(self):
        dici = {}
        reg = gst.registry_get_default()
        plugins = reg.get_plugin_list()
        for plugin in plugins:
            features = reg.get_feature_list_by_plugin(plugin.get_name())
            for feature in features:
                if isinstance(feature, gst.ElementFactory):
                    try:
                        if feature.get_uri_type():
                            protocols = feature.get_uri_protocols()
                            for protocol in protocols:
                            ## We want only be fallback, if there is another
                            ## player for the uri
                                dici[str(protocol)] = 150
                    except AttributeError, e:
                        #FIXME: this is a work-a-round for pygst-bug #385841,
                        #       remove it as fast as possible
                        print "error", feature.get_name()
                        continue
        return dici
output:

error flummssrc
error mmssrc
error cdaudio
error dvdreadsrc
error neonhttpsrc
error dv1394src
error filesink
error filesrc
error fdsink
error fdsrc
error udpsrc
error udpsink
error gnomevfssink
error gnomevfssrc
error cdparanoiasrc
error cdiocddasrc
error rtspsrc