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