Changeset 1598
- Timestamp:
- 2005-11-01 20:56:55 (3 years ago)
- Files:
-
- annoamp/trunk/annoamp.py (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
annoamp/trunk/annoamp.py
r1597 r1598 37 37 self.bin = gst.parse_launch('filesrc name=source ! oggdemux name=demuxer \n' + 38 38 'demuxer. ! queue ! cmmldec name=cmml ! fakesink \n' + 39 'demuxer. ! queue ! vorbisdec name=decoder ! audioconvert ! osssink')39 'demuxer. ! queue ! vorbisdec name=decoder ! audioconvert ! alsasink') 40 40 self.bin.error = pipe_error 41 41 ''' … … 77 77 time = -1 78 78 try: 79 time = self.bin.query_position(gst.FORMAT_TIME)[0] 79 time = self.bin.query_position(gst.FORMAT_TIME)[0]/gst.SECOND 80 80 except: 81 81 pass 82 82 83 83 if time >= 0: 84 self.update_time_callback(time /gst.SECOND, self.duration)84 self.update_time_callback(time, self.duration) 85 85 86 chapter = self.chapter_at(time/gst.SECOND) 87 if self.pos != chapter: #we hit a new chapter 88 self.current_chapter_callback(chapter) 89 self.pos = chapter 86 if self.pos < playlist.iter_n_children(None) - 1: 87 next_chapter_at = playlist.get_value(self.playlist.iter_nth_child(None,self.pos+1), 1) 88 if time >= next_chapter_at: #we hit a new chapter 89 self.pos += 1 90 self.current_chapter_callback(self.pos) 90 91 91 92 if self.bin.get_state()[1] == gst.STATE_PAUSED: … … 136 137 self.pos = -1 137 138 139 #create a fake pipeline which we'll play, gathering all the tags and storing this information 138 140 fake = gst.parse_launch('filesrc name=source ! oggdemux name=demuxer ! cmmldec name=cmml ! fakesink \n') 139 141 fake_filesrc = fake.get_by_name('source') … … 174 176 175 177 def seek(self,location): 176 event = gst.event_new_seek(1.0, gst.FORMAT_TIME, 1, gst.SEEK_TYPE_SET, gst.SECOND*location, gst.SEEK_TYPE_NONE, 0);178 event = gst.event_new_seek(1.0, gst.FORMAT_TIME, gst.SEEK_FLAG_FLUSH, gst.SEEK_TYPE_SET, gst.SECOND*location, gst.SEEK_TYPE_NONE, 0); 177 179 print "%s" % event 178 180 result = self.bin.send_event(event)