Ciao a tutti eccomi col primo post di questa nuova avventura 
In questo spazio posterò ciò che andrò scoprendo nel mondo Linux,i codici dei miei programmi,e news in generale…insomma tutto quello che stimola la mia (e spero anche la vostra) curiosità…!!!
Iniziamo subito presentando una libreria per python che ci permette di lavorare sull’audio,la libreria in questione si chiama PyMedia, se la dovete installare su un sistema Windows basta scaricare l’installer (.exe) ed installarlo come un semplice programma,mentre se come me siete su un sistema linux scaricate il .tar.gz e seguite le seguenti istruzioni per Ubuntu 7.10 :
-Installare prima le dipendenze:
sudo apt-get install python-dev libogg-dev libvorbis-dev liblame-dev libfaad2-dev libasound2-dev python-pygame
-Digitare sul terminale:
python setup.py build
-Infine installiamo pymedia:
sudo python setup.py install
Per verificare che tutto sia andato a buon fine aprite la shell interattiva di python (basta digitare “python” sul terminale) e scrivere:import pymedia
se non compare nessun errore significa che pymedia è stato installato correttamente..!!
Iniziamo presentando un primo programmino anche se con un’interfaccia ancora rudimentale,si tratta di un player audio creato con python utilizzando pymedia per la gestione dell’audio e le wxpython per l’interfaccia grafica
import wx
import pymedia
ID_APRI=wx.NewId()
ID_ESCI=wx.NewId()
class Main(wx.Frame):
def __init__(self,parent,id,title):
wx.Frame.__init__(self,parent,id,title,size=(250,120))
self.BottonePlay=wx.Button(self,-1,'PLAY',pos=(00,35),size=(55,30))
self.BottonePause=wx.Button(self,-1,'PAUSE',pos=(55,35),size=(55,30))
self.BottoneStop=wx.Button(self,-1,'STOP',pos=(110,35),size=(55,30))
#
self.BottonePlay.Bind(wx.EVT_BUTTON,self.Play,self.BottonePlay)
self.BottoneStop.Bind(wx.EVT_BUTTON,self.Stop,self.BottoneStop)
self.BottonePause.Bind(wx.EVT_BUTTON,self.Pause,self.BottonePause)
#
menu=wx.Menu()
menu.Append(ID_APRI,'Apri...' )
menu.Append(ID_ESCI,'Esci' )
#
menuBar=wx.MenuBar()
menuBar.Append(menu,'&File' )
self.SetMenuBar(menuBar)
wx.EVT_MENU(self,ID_APRI,self.Apri)
wx.EVT_MENU(self,ID_ESCI,self.Esci)
#
self.Show(True)
#
self.StatutsPause=False #all'inizio e' impostato su False
self.canzone=""
self.player=pymedia.Player()
def Play(self,event):
if (self.canzone!=''):
if (self.player.isPlaying()==False):
self.player=pymedia.Player()
self.player.start()
self.player.startPlayback(self.canzone)
else:
wx.MessageBox("Selezionare una canzone","Info", wx.OK | wx.ICON_INFORMATION)
def Pause(self,event):
try:
if(self.player.isPlaying()==True)and(self.StatutsPause==False):
self.player.pausePlayback()
self.StatutsPause=True
elif(self.StatutsPause==True):
self.player.unpausePlayback()
self.StatutsPause=False
except AttributeError:
pass
def Stop(self,event):
try:
if (self.player.isPlaying()==True):
self.player.stop()
self.player.stopPlayback()
except AttributeError:
pass
def Apri(self,event):
path=wx.FileDialog(self, "Carica...", "", "", "*.mp3", wx.OPEN)
if (path.ShowModal()==wx.ID_OK):
self.canzone=path.GetPath()
def Esci(self,event):
self.Destroy()
#--Main--#
if (__name__=='__main__'):
app=wx.PySimpleApp()
frame=Main(None,-1,'Player' )
frame.Show()
app.MainLoop()
Alla prossima…!!! 