Пример #1
0
 def setUp(self):
     self.track1 = mediapackage.Track(uri = self.path_track1, duration = 532, 
                                      flavor = "presentation/source", mimetype = "video/mpeg")
     self.track2 = mediapackage.Track(uri = self.path_track2, duration = 532, 
                                      flavor = "presenter/source", mimetype = "video/mpeg")
     self.catalog = mediapackage.Catalog(uri = self.path_catalog, flavor = "dublincore/episode", 
                                         mimetype = "text/xml")
     self.gc_catalog = mediapackage.Catalog(uri = self.path_gc, flavor = "galicaster", 
                                         mimetype = "text/xml")
Пример #2
0
    def update_metadata(self,table,mp):
        """Write data back to the mediapackage"""
        for child in table.get_children():
            if child.name in DCTERMS:
                if child.name in ["creator", "contributor", "subject"]:
                    if child.get_text() == "":
                        mp.metadata_episode[child.name] = None
                    else:
                        mp.metadata_episode[child.name] = child.get_text().strip()

                elif child.name in [ "ispartof", "isPartOf" ]:
                    identifier = child.get_model()[child.get_active_iter()][1]
                    series = listseries.getSeriesbyId(identifier)
                    if series:
                        mp.setSeries(series["list"])
                        if not mp.getCatalogs("dublincore/series") and mp.getURI():
                            new_series = mediapackage.Catalog(os.path.join(mp.getURI(),"series.xml"),mimetype="text/xml",flavor="dublincore/series")
                            mp.add(new_series)                    
                    else: 
                        mp.setSeries(None)
                        catalog= mp.getCatalogs("dublincore/series")
                        if catalog:
                            mp.remove(catalog[0])
                else:
                    mp.metadata_episode[child.name]=child.get_text()
Пример #3
0
 def setUp(self):
     self.track1 = mediapackage.Track(uri = self.path_track1, duration = 532, 
                                      flavor = "presentation/source", mimetype = "video/mpeg")
     self.track2 = mediapackage.Track(uri = self.path_track2, duration = 532, 
                                      flavor = "presenter/source", mimetype = "video/mpeg")
     self.catalog = mediapackage.Catalog(uri = self.path_catalog, flavor = "catalog/source", 
                                         mimetype = "text/xml")
     self.tmppath = mkdtemp()
Пример #4
0
 def setUp(self):
     self.track1 = mediapackage.Track(uri=self.path_track1,
                                      duration=532,
                                      flavor="presentation/source")
     self.track2 = mediapackage.Track(uri=self.path_track2,
                                      duration=532,
                                      flavor="presenter/source")
     self.catalog = mediapackage.Catalog(uri=self.path_catalog,
                                         flavor="catalog/source")
     self.attach = mediapackage.Attachment(uri=self.path_attach,
                                           flavor="attachment/source")
     self.other = mediapackage.Other(uri=self.path_other,
                                     flavor="other/source")
Пример #5
0
 def test_element_equality(self):
     track = mediapackage.Track(self.path_track1, 532,
                                "presentation/source")
     attach = mediapackage.Attachment(self.path_attach, "attachment/source")
     catalog = mediapackage.Catalog(self.path_catalog, "catalog/source")
     other = mediapackage.Other(self.path_other, "other/source")
     self.assertFalse(track == self.track2)
     self.assertFalse(track == attach)
     self.assertFalse(attach == catalog)
     self.assertFalse(catalog == other)
     self.assertFalse(other == track)
     self.assertTrue(track == self.track1)
     self.assertTrue(attach == self.attach)
     self.assertTrue(catalog == self.catalog)
     self.assertTrue(other == self.other)
Пример #6
0
    def update_metadata(self, table, mp):
        """Write data back to the mediapackage"""
        for child in table.get_children():
            if child.name in DCTERMS:
                if child.name in ["creator", "contributor", "subject"]:
                    if child.get_text() == "":
                        mp.metadata_episode[child.name] = None
                    else:
                        mp.metadata_episode[
                            child.name] = child.get_text().strip()

                elif child.name == "ispartof" or child.name == "isPartOf":
                    result = child.get_active_text()
                    model = child.get_model()
                    iterator = model.get_iter_first()
                    while iterator != None:
                        if model[iterator][0] == result:
                            break
                        iterator = model.iter_next(iterator)
                    identifier = model[iterator][1]
                    series = None
                    if result != NO_SERIES:
                        series = listseries.getSeriesbyId(identifier)

                    if series != None:
                        mp.setSeries(series["list"])
                        if not mp.getCatalogs(
                                "dublincore/series") and mp.getURI():
                            new_series = mediapackage.Catalog(
                                path.join(mp.getURI(), "series.xml"),
                                mimetype="text/xml",
                                flavor="dublincore/series")
                            mp.add(new_series)
                    else:
                        mp.setSeries(None)

                        catalog = mp.getCatalogs("dublincore/series")
                        if catalog:
                            mp.remove(catalog[0])
                else:
                    mp.metadata_episode[child.name] = child.get_text()
Пример #7
0
    def test_side_by_side(self):
        w = worker.Worker(self.dispatcher, self.repo1, self.logger,
                          self.client)

        baseDir = get_resource('sbs')
        path_track1 = path.join(baseDir, 'SCREEN.mp4')
        path_track2 = path.join(baseDir, 'CAMERA.mp4')
        path_catalog = path.join(baseDir, 'episode.xml')
        path_attach = path.join(baseDir, 'attachment.txt')
        path_capture_agent_properties = path.join(
            baseDir, 'org.opencastproject.capture.agent.properties')
        path_other = path.join(baseDir, 'manifest.xml')

        track1 = mediapackage.Track(uri=path_track1,
                                    duration=532,
                                    flavor="presentation/source")
        track2 = mediapackage.Track(uri=path_track2,
                                    duration=532,
                                    flavor="presenter/source")
        catalog = mediapackage.Catalog(uri=path_catalog,
                                       flavor="catalog/source")
        attach = mediapackage.Attachment(uri=path_attach,
                                         flavor="attachment/source")
        other = mediapackage.Other(uri=path_other, flavor="other/source")

        self.mp.add(path_track1, mediapackage.TYPE_TRACK,
                    "presentation/source", "video/mpeg", 532)
        self.mp.add(path_track2, mediapackage.TYPE_TRACK, "presenter/source",
                    "video/mpeg", 532)
        self.mp.add(path_catalog, mediapackage.TYPE_CATALOG, "catalog/source",
                    "text/xml")
        self.mp.add(path_attach, mediapackage.TYPE_ATTACHMENT,
                    "attachment/source", "text/xml")
        self.mp.add(path_other, mediapackage.TYPE_OTHER, "other/source",
                    "text/xml")

        filename = '/tmp/sidebyside.mpeg'
        w.enqueue_job_by_name('sidebyside', self.mp, {'location': filename})
        time.sleep(2)
        self.assertTrue(os.path.exists(filename))
Пример #8
0
    def update_metadata(self,table,mp):
        """Write data back to the mediapackage"""
        for child in table.get_children():
            if child.name in DCTERMS:
                if child.name == "creator":
                    if child.get_text() != "":                        
                        new = list(child.get_text().strip().split(','))
                        splitted = map(self.strip_spaces, new)
                        mp.setCreators(splitted)
                    else:
                        mp.setCreators(list())
                elif child.name == "contributor":
                    if child.get_text() != "":
                        new = list(child.get_text().strip().split(','))
                        splitted = map(self.strip_spaces, new)
                        mp.setContributors(splitted)
                    else:
                        mp.setContributors(list())
                elif child.name == "subject":
                    if child.get_text() != "":
                        new = list(child.get_text().strip().split(','))
                        splitted = map(self.strip_spaces, new)
                        mp.setSubjects(splitted)
                    else:
                        mp.setSubjects(list())
                elif child.name == "ispartof" or child.name == "isPartOf":
                    result=child.get_active_text()
                    model = child.get_model()
                    iterator = model.get_iter_first()
                    while iterator != None:
                        if model[iterator][0] == result:
                            break
                        iterator = model.iter_next(iterator)                        
                    identifier = model[iterator][1]
                    series = None
                    if result != NO_SERIES:
                        series = listseries.getSeriesbyId(identifier)

                    if series != None:
                        mp.series = series["id"]
                        mp.series_title = series["name"]

                        if not mp.getCatalogs("dublincore/series") and mp.getURI():
                            new_series = mediapackage.Catalog(path.join(mp.getURI(),"series.xml"),mimetype="text/xml",flavor="dublincore/series")
                            mp.add(new_series)

                    else: 
                        mp.series = None
                        mp.series_title = None

                        catalog= mp.getCatalogs("dublincore/series")
                        if catalog:
                            mp.remove(catalog[0])

                else:
                    mp.metadata_episode[child.name]=child.get_text()

        #mp.setTitle(mp.metadata_episode['title']) # WARNING title is a property
        mp.setLanguage(mp.metadata_episode['language'])
        mp.metadata_episode['creator']=mp.creators
        mp.metadata_episode['contributor']=mp.contributors
        mp.metadata_episode['subject']=mp.subjects