MCPcopy Create free account
hub / github.com/GStreamer/gst-python / SyncPoints

Class SyncPoints

old_examples/synchronizer.py:132–270  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

130 self.imagesink.set_xwindow_id(self.window.xid)
131
132class SyncPoints(gtk.VBox):
133 def __init__(self, window):
134 gtk.VBox.__init__(self)
135 self.pwindow = window
136 self.create_ui()
137
138 def get_time_as_str(self, iter, i):
139 value = self.model.get_value(iter, i)
140 ret = ''
141 for div, sep, mod, pad in ((gst.SECOND*60, '', 0, 0),
142 (gst.SECOND, ':', 60, 2),
143 (gst.MSECOND, '.', 1000, 3)):
144 n = value // div
145 if mod:
146 n %= mod
147 ret += sep + ('%%0%dd' % pad) % n
148 return ret
149
150 def create_ui(self):
151 self.model = model = gtk.ListStore(gobject.TYPE_UINT64,
152 gobject.TYPE_UINT64)
153 self.view = view = gtk.TreeView(self.model)
154
155 renderer = gtk.CellRendererText()
156 column = gtk.TreeViewColumn("Audio time", renderer)
157 def time_to_text(column, cell, method, iter, i):
158 cell.set_property('text', self.get_time_as_str(iter, i))
159 column.set_cell_data_func(renderer, time_to_text, 0)
160 column.set_expand(True)
161 column.set_clickable(True)
162 view.append_column(column)
163
164 renderer = gtk.CellRendererText()
165 column = gtk.TreeViewColumn("Video time", renderer)
166 column.set_cell_data_func(renderer, time_to_text, 1)
167 column.set_expand(True)
168 view.append_column(column)
169
170 view.show()
171 self.pack_start(view, True, True, 6)
172
173 hbox = gtk.HBox(False, 0)
174 hbox.show()
175 self.pack_start(hbox, False, False, 0)
176
177 add = gtk.Button(stock=gtk.STOCK_ADD)
178 add.show()
179 def add_and_select(*x):
180 iter = model.append()
181 self.view.get_selection().select_iter(iter)
182 self.changed()
183 add.connect("clicked", add_and_select)
184 hbox.pack_end(add, False, False, 0)
185
186 remove = gtk.Button(stock=gtk.STOCK_REMOVE)
187 remove.show()
188 def remove_selected(*x):
189 model, iter = self.view.get_selection().get_selected()

Callers 1

create_uiMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected