Archived:Como criar um MP3 player no Maemo
Aquivado: Este artigo foi arquivado, pois o conteúdo não é mais considerado relevante para se criar soluções comerciais atuais. Se você achar que este artigo ainda é importante, inclua o template {{ForArchiveReview|escreva a sua justificativa}}.
Acredita-se que este artigo ainda seja válido no contexto original (quando ele foi escrito)
Acredita-se que este artigo ainda seja válido no contexto original (quando ele foi escrito)
Dados do artigo
Artigo
Tradução:
Originado de How to create a mp3 player in Maemo
Por maiconherverton
Última alteração feita por hamishwillee
em 14 Jun 2013
Este código-fonte mostra como criar um MP3 player simples na plataforma Maemo.
#!/usr/bin/python
import pygst
pygst.require("0.10")
import gst
import pygtk
import gtk
import hildon
class Player(hildon.Program):
def __init__(self):
hildon.Program.__init__(self)
self.window = hildon.Window()
self.window.connect("delete_event", gtk.main_quit)
self.window.set_title("Player")
self.add_window(self.window)
self.create_interface()
self.create_pipeline()
self.window.add(self.table)
self.window.show_all()
def create_interface(self):
self.table = gtk.Table(2,2,True)
buttonPlay = gtk.Button("Tocar")
buttonPause = gtk.Button("Pausar")
buttonStop = gtk.Button("Parar")
buttonOpen = gtk.Button("Abrir")
buttonPlay.connect("clicked",self.OnPlay)
buttonPause.connect("clicked",self.OnPause)
buttonStop.connect("clicked",self.OnStop)
buttonOpen.connect("clicked",self.OnOpen)
self.table.attach(buttonPlay,0,1,0,1)
self.table.attach(buttonPause,1,2,0,1)
self.table.attach(buttonStop,0,1,1,2)
self.table.attach(buttonOpen,1,2,1,2)
def create_pipeline(self):
# Criar bits GStreamer e bobs
self.pipeline = gst.Pipeline("mypipeline")
self.audiosrc = gst.element_factory_make("gnomevfssrc","source")
self.pipeline.add(self.audiosrc)
self.audiosink = gst.element_factory_make("dspmp3sink", "sink")
self.pipeline.add(self.audiosink)
self.audiosrc.link(self.audiosink)
def OnPlay(self, widget):
self.pipeline.set_state(gst.STATE_PLAYING)
def OnPause(self, widget):
self.pipeline.set_state(gst.STATE_PAUSED)
def OnStop(self, widget):
if self.pipeline.get_state() != gst.STATE_PAUSED:
self.pipeline.set_state(gst.STATE_PAUSED)
if self.pipeline.get_state() != gst.STATE_NULL:
self.pipeline.set_state(gst.STATE_NULL)
def OnOpen(self, widget):
dialog = hildon.FileChooserDialog(self.window,gtk.FILE_CHOOSER_ACTION_OPEN)
response = dialog.run()
dialog.hide()
file_name = selector.get_filename()
if response == gtk.RESPONSE_OK:
self.audiosrc.set_property("location", file_name)
self.pipeline.set_state(gst.STATE_READY)
start=Player()
gtk.main()


(no comments yet)