Update of /cvsroot/freevo/freevo/src/video In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16605
Modified Files: __init__.py fxdhandler.py videoitem.py Log Message: fix/enhance dvd on disc Index: __init__.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/video/__init__.py,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -d -r1.26 -r1.27 *** __init__.py 2 Feb 2004 22:15:53 -0000 1.26 --- __init__.py 3 Feb 2004 20:51:12 -0000 1.27 *************** *** 10,13 **** --- 10,16 ---- # ----------------------------------------------------------------------- # $Log$ + # Revision 1.27 2004/02/03 20:51:12 dischi + # fix/enhance dvd on disc + # # Revision 1.26 2004/02/02 22:15:53 outlyer # Support for mirrors of DVDs... *************** *** 122,129 **** # DVD Image x = VideoItem('', None) ! x.set_url('dvd://' + i[1:] + '/VIDEO_TS/') # Trailing slash is important for Xine ! x.type = 'dvd' ! x.media = 'file' ! x.devicename = '' x.name = os.path.basename(i) items += [ x ] --- 125,130 ---- # DVD Image x = VideoItem('', None) ! # Trailing slash is important for Xine ! x.set_url('dvd://' + i[1:] + '/VIDEO_TS/') x.name = os.path.basename(i) items += [ x ] Index: fxdhandler.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/video/fxdhandler.py,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** fxdhandler.py 1 Feb 2004 19:47:13 -0000 1.15 --- fxdhandler.py 3 Feb 2004 20:51:12 -0000 1.16 *************** *** 10,13 **** --- 10,16 ---- # ----------------------------------------------------------------------- # $Log$ + # Revision 1.16 2004/02/03 20:51:12 dischi + # fix/enhance dvd on disc + # # Revision 1.15 2004/02/01 19:47:13 dischi # some fixes by using new mmpython data *************** *** 214,217 **** --- 217,226 ---- item.set_url(url, info=True) item.info.set_variables(variables) + elif url.startswith('file://') and os.path.isdir(url[7:]): + # dvd dir + variables = item.info.get_variables() + item.set_url(url.replace('file://', 'dvd:/')+ '/VIDEO_TS/', info=True) + print item.url + item.info.set_variables(variables) else: item.set_url(url, info=False) Index: videoitem.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/video/videoitem.py,v retrieving revision 1.121 retrieving revision 1.122 diff -C2 -d -r1.121 -r1.122 *** videoitem.py 1 Feb 2004 19:47:13 -0000 1.121 --- videoitem.py 3 Feb 2004 20:51:12 -0000 1.122 *************** *** 11,14 **** --- 11,17 ---- # ----------------------------------------------------------------------- # $Log$ + # Revision 1.122 2004/02/03 20:51:12 dischi + # fix/enhance dvd on disc + # # Revision 1.121 2004/02/01 19:47:13 dischi # some fixes by using new mmpython data *************** *** 95,99 **** from gui import PopupBox, AlertBox, ConfirmBox ! from item import Item from event import * --- 98,102 ---- from gui import PopupBox, AlertBox, ConfirmBox ! from item import Item, FileInformation from event import * *************** *** 175,178 **** --- 178,190 ---- self.network_play = False self.mimetype = self.url[:self.url.find('://')].lower() + + if self.url.find('/VIDEO_TS/') > 0: + # dvd on harddisc + self.filename = self.url[5:self.url.rfind('/VIDEO_TS/')] + self.info = util.mediainfo.get(self.filename) + self.files = FileInformation() + self.files.append(self.filename) + self.num_titles = len(self.info['tracks']) + if not self.image or (self.parent and self.image == self.parent.image): image = vfs.getoverlay(self.filename + '.raw') *************** *** 180,184 **** self.image = image self.files.image = image ! def id(self): --- 192,196 ---- self.image = image self.files.image = image ! def id(self): *************** *** 266,270 **** self.player_rating, self.player = self.possible_player[0] ! if self.url == 'dvd://': if self.player_rating >= 20: items = [ (self.play, _('Play DVD')), --- 278,282 ---- self.player_rating, self.player = self.possible_player[0] ! if self.url.startswith('dvd://') and self.url[-1] == '/': if self.player_rating >= 20: items = [ (self.play, _('Play DVD')), *************** *** 292,296 **** items = [ (self.show_variants, _('Show variants')) ] + items ! if not self.image and self.filename and not self.variants and not self.subitems: items.append((self.create_thumbnail, _('Create Thumbnail'), 'create_thumbnail')) --- 304,308 ---- items = [ (self.show_variants, _('Show variants')) ] + items ! if not self.image and self.mode == 'file' and not self.variants and not self.subitems: items.append((self.create_thumbnail, _('Create Thumbnail'), 'create_thumbnail')) *************** *** 459,463 **** elif self.url.startswith('dvd://') or self.url.startswith('vcd://'): ! if not self.media: media = util.check_media(self.media_id) if media: --- 471,475 ---- elif self.url.startswith('dvd://') or self.url.startswith('vcd://'): ! if self.url.rfind('/') < 6 and not self.media: media = util.check_media(self.media_id) if media: *************** *** 525,537 **** for title in range(1,self.num_titles+1): i = copy.copy(self) i.info = copy.copy(self.info) - i.possible_player = [] # copy the attributes from mmpython about this track if self.info.has_key('tracks'): i.info.mmdata = self.info.mmdata['tracks'][title-1] ! i.info_type = 'track' ! i.set_url(self.url + str(title), False) ! i.name = _('Play Title %s') % title ! items += [i] moviemenu = menu.Menu(self.name, items, umount_all = 1, fxd_file=self.skin_fxd) --- 537,554 ---- for title in range(1,self.num_titles+1): i = copy.copy(self) + i.set_url(self.url + str(title), False) i.info = copy.copy(self.info) # copy the attributes from mmpython about this track if self.info.has_key('tracks'): i.info.mmdata = self.info.mmdata['tracks'][title-1] ! i.info.set_variables(self.info.get_variables()) ! i.info['audio'] = i.info.mmdata.audio ! i.info['subtitles'] = i.info.mmdata.subtitles ! i.info['chapters'] = i.info.mmdata.chapters ! i.info_type = 'track' ! i.possible_player = [] ! i.files = None ! i.name = _('Play Title %s') % title ! items.append(i) moviemenu = menu.Menu(self.name, items, umount_all = 1, fxd_file=self.skin_fxd) ------------------------------------------------------- The SF.Net email is sponsored by EclipseCon 2004 Premiere Conference on Open Tools Development and Integration See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. http://www.eclipsecon.org/osdn _______________________________________________ Freevo-cvslog mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freevo-cvslog