All pastes #333264 Raw Edit

deinterleave test

public python v1 · immutable
#333264 ·published 2007-01-30 20:19 UTC
rendered paste body
#!/usr/bin/pythonimport pygstpygst.require('0.10')import gstimport timeimport gtk, sysDEVICE = "hw:1"index = 0def new_pad(elem, pad):	global index	newqueue = gst.element_factory_make("queue")	newmux = gst.element_factory_make("oggmux")	newenc = gst.element_factory_make("vorbisenc")	newsink = gst.element_factory_make("filesink")	newsink.set_property("location", str(index) + ".ogg")	recbin.add(newqueue)	recbin.add(newmux)	recbin.add(newenc)	recbin.add(newsink)	pad.link(newqueue.get_pad("sink"))	newqueue.link(newenc)	newenc.link(newmux)	newmux.link(newsink)	index += 1	print paddef stop(widget):	recbin.set_state(gst.STATE_NULL)	sys.exit(0)recbin = gst.element_factory_make("bin")src = gst.element_factory_make("alsasrc")src.set_property("device", DEVICE)conv = gst.element_factory_make("audioconvert")split = gst.element_factory_make("deinterleave")recbin.add(src)recbin.add(split)recbin.add(conv)src.link(conv)conv.link(split)split.connect("pad-added", new_pad)print "Pipeline constructed..."recbin.set_state(gst.STATE_PLAYING)win = gtk.Window()button = gtk.Button("Stop")win.add(button)button.connect("clicked", stop)win.show()button.show()print "Recording."gtk.main()