#!/usr/bin/env python # -*- Mode: Python -*- # vi:si:et:sw=4:sts=4:ts=4 # gst-python # Copyright (C) 2005 Fluendo S.L. # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Library General Public # License as published by the Free Software Foundation; either # version 2 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Library General Public License for more details. # # You should have received a copy of the GNU Library General Public # License along with this library; if not, write to the # Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, # Boston, MA 02110-1301, USA. # # Author: Andy Wingo import gtk from gtk import gdk import gobject import pygst pygst.require('0.10') import gst class DebugSlider(gtk.HScale): def __init__(self): adj = gtk.Adjustment(int(gst.debug_get_default_threshold()), 0, 5, 1, 0, 0) gtk.HScale.__init__(self, adj) self.set_digits(0) self.set_draw_value(True) self.set_value_pos(gtk.POS_TOP) def value_changed(self): newlevel = int(self.get_adjustment().get_value()) gst.debug_set_default_threshold(newlevel) self.connect('value-changed', value_changed) if __name__ == '__main__': p = gst.parse_launch('fakesrc ! fakesink') p.set_state(gst.STATE_PLAYING) w = gtk.Window() s = DebugSlider() w.add(s) s.show() w.set_default_size(200, 40) w.show() w.connect('delete-event', lambda *args: gtk.main_quit()) gtk.main()