Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Lire un sons en python

17 réponses
Avatar
firelink.east
Voil=E0 je d=E9bute en python je viens de terminer les le=E7on du cours Rur-
ple ( http://rur-ple.sourceforge.net/en/rur.htm ) tr=E8s instructif on
y apprend en s'amusant des trucs comme -

- def , if , else elif , pass , not while , from and import object
oriented programing , tulpe , global , list , append , pop ,
dictionnary , str , int , class , del , return , for .. in , for ...
in .. range()
, join , len , designing new class , designing new class for change
the base of an existing class : __init__ , from 'module' import
'fonction' , from 'module' import * (all function of that module ) ,
try
,-

M=EAme si je maitrise pas encore tout :) La premier programme que je
souhaite faire est un inutilitaire qui m'a bien fait rire il y a
quelque ann=E9es mais dont j'ai pas encore vue l'=E9quivalent en sous
Linux . Ce soft a pour but simplement diff=E9rent sons pr=E9d=E9finie
(Ahh , Ohh , Wow .. ) lors qu'on clique sur un bouton . Rien de bien
sorcier j'ai commencer =E0 faire l'interface en TK , et voila lorsque
j'essaye de lui faire lire un sons (wav ou ogg ) rien ne sort . J'ai
test=E9 diff=E9rent module pyogg , pyvorbis , puis j'ai test=E9 libsnack
( http://www.speech.kth.se/snack/) . Il semblerait lorsque je lance
les commande dans le prompt cela le lit (en ouvrant xmms en meme temps
je n'ai pas de sons car /dev/dsp occup=E9 ) , sinon lorsque je lance le
script il me donne une erreur de syntaxe : soundtest():^
SyntaxError: invalid syntax
Script terminated. , voici mon code :

import sys
from Tkinter import *
root =3D Tk()
import tkSnack
tkSnack.initializeSnack(root)
mysound =3D tkSnack.Sound(load=3D'/usr/share/xulrunner/res/samples/
test.wav')
soundtest():
mysound.play
fen =3D Tk()
fen.title("Fen=EAtre compos=E9e =E0 l'aide de frames")
fen.geometry("157x178")
f1 =3D Frame(fen,bd =3D2, )
f1.pack(side =3D LEFT)
bou1=3DButton(f1, text=3D'Ah')
bou1.pack()
bou2 =3DButton(f1, text=3D'BoOOoo',command=3Dsoundtest)
bou2.pack()
bou3=3DButton(f1, text=3D'Clapping')
bou3.pack()
bou4=3DButton(f1, text=3D'Huh ? ')
bou4.pack()

f2 =3D Frame(fen, bd =3D2, )
f2.pack(side =3DRIGHT)
bou5=3DButton(f2, text=3D'Bouton')
bou5.pack()
bou6=3DButton(f2, text=3D'Bouton')
bou6.pack()
bou7=3DButton(f2, text=3D'Bouton')
bou7.pack()
bou8=3DButton(f2, text=3D'Bouton')
bou8.pack()
f3 =3D Frame(fen, bd =3D2, )
f3.pack(side =3D BOTTOM)

bou9=3DButton(f3, text=3D'hello')
bou9.pack()

fen.mainloop()




merci d'avance

10 réponses

1 2
Avatar
Alex Marandon
On Wed, 22 Aug 2007 19:57:34 +0200, wrote:
lorsque je lance le
script il me donne une erreur de syntaxe : soundtest():^
SyntaxError: invalid syntax
Script terminated. , voici mon code :
(...)

soundtest():
mysound.play
(...)


On dirait qu'il manque un "def" avant soundtest.

Avatar
Laurent Pointal
<zip...>
J'ai
testé différent module pyogg , pyvorbis , puis j'ai testé libsnack
( http://www.speech.kth.se/snack/) .


Au cas où, pyGame a des modules pour jouer un fichier, régler le volume...

http://www.pygame.org/docs/ref/music.html


<zip...>

Avatar
firelink.east
On 23 août, 07:47, "Alex Marandon" wrote:
On Wed, 22 Aug 2007 19:57:34 +0200, wrote:
lorsque je lance le
script il me donne une erreur de syntaxe : soundtest():^
SyntaxError: invalid syntax
Script terminated. , voici mon code :
(...)

soundtest():
mysound.play


(...)

On dirait qu'il manque un "def" avant soundtest.


Oui , juste , après definition lorsque j'appuye sur le bouton BooOoo
il n'y a aucun sons qui sort , est ce normal ?


Avatar
firelink.east
On 23 août, 09:11, Laurent Pointal wrote:
<zip...>

J'ai
testé différent module pyogg , pyvorbis , puis j'ai testé libsnack
(http://www.speech.kth.se/snack/) .


Au cas où, pyGame a des modules pour jouer un fichier, régler le volu me...

http://www.pygame.org/docs/ref/music.html

<zip...>


en remplacant le code de libsnack par pygame :


import pygame
from pygame.locals import *

pygame.init()



def soundtest():
pygame.mixer.music.load('/home/me/dangers.ogg')
pygame.mixer.music.play(loops=0, start=0.0)


celui ci me renvoye une erreur lorsqu'on appuye sur le bouton
correspondant

TypeError : play() takes no keywords arguments ..


Avatar
firelink.east
On 23 août, 11:35, wrote:
On 23 août, 07:47, "Alex Marandon" wrote:

On Wed, 22 Aug 2007 19:57:34 +0200, wrote:
lorsque je lance le
script il me donne une erreur de syntaxe : soundtest():^
SyntaxError: invalid syntax
Script terminated. , voici mon code :
(...)

soundtest():
mysound.play


(...)

On dirait qu'il manque un "def" avant soundtest.


Oui , juste , après definition lorsque j'appuye sur le bouton BooOoo
il n'y a aucun sons qui sort , est ce normal ?



(...)

On dirait qu'il manque un "def" avant soundtest.


Oui , juste , après definition lorsque j'appuye sur le bouton BooOoo
il n'y a aucun sons qui sort , est ce normal ?


je me répond , ca marche maintenant (j avais oublier de mettre la
parenthese pour la fonction mysound.play() ) en tout cas pour le
wav , l'ogg donne des sons brouillés , ca du au fait qu'il faut
surement le décoder avant .. Au fait comment est ce que je peux lister
toute les fonctions d'un module en python ?

comment definir la taille d'un bouton sous python pour Tk pour que
celui ci ne dépende pas de la taille du texte à l'intérieur , merci



Avatar
Jerome
Bonjour

-snip-

wrote:
Au fait comment est ce que je peux lister
toute les fonctions d'un module en python ?


import string
dir(string)






Avatar
firelink.east
On 23 août, 13:30, Jerome wrote:
Bonjour

-snip-

wrote:
Au fait comment est ce que je peux lister
toute les fonctions d'un module en python ?

import string
dir(string)





merci


voila j'ai quasi fini le soft , reste juste quelque détails :


j'aimerais à la fois mettre les wav dans un répértoire , séparer du
script . et à la fois que le script puisse s'éxecuter autant sous
Linux que windows et Mac os x .

le problème vient du fait que la syntaxe des répértoire diffère sous
windows de Linux et Mac os x .(slash et backslash ) .

j'aimerais mettre un bouton exit en tout en dessous , j'avais créer
une nouvelle frame , mais le bouton se met toujours a coté . (right)
au lieu d en bas bien que j'ai defini la nouvelle frame avec side =
BOTTOM

quelqu'un a t-il déjà utilisé Py2exe ? pour transformer un py
en .exe

même chose pour Mac os x ( Py2app )

Même chose pour Linux (pour gerer les dependance ) autopackage peut
etre ?

voici le code :

import sys
from Tkinter import *
root = Tk()
import tkSnack
tkSnack.initializeSnack(root)


def Aaah():
AhhSound = tkSnack.Sound(load='/home/me/resource/crowd.exe.remake/
wav/crowd.exe.remake.0.2.Aaahh.wav')
AhhSound.play()
def Oohh():
OohhSound = tkSnack.Sound(load='/home/me/resource/crowd.exe.remake/
wav/crowd.exe.remake.0.2.Oohh.wav')
OohhSound.play()

def BOo():
BOoSound = tkSnack.Sound(load='/home/me/resource/crowd.exe.remake/
wav/crowd.exe.remake.0.1.BOo.wav')

BOoSound.play()

def WOW():
WOWsound = tkSnack.Sound(load='/home/me/resource/crowd.exe.remake/
wav/crowd.exe.remake.0.1.WOW.wav')
WOWsound.play()

def Clapping():
ClappingSound = tkSnack.Sound(load='/home/me/resource/
crowd.exe.remake/wav/crowd.exe.remake.0.1.Clapping.wav')
ClappingSound.play()

def Laughing():
LaughingSound = tkSnack.Sound(load='/home/me/resource/
crowd.exe.remake/wav/crowd.exe.remake.0.1.laughing.wav')
LaughingSound.play()

def Huh():
HuhSound = tkSnack.Sound(load='/home/me/resource/crowd.exe.remake/
wav/crowd.exe.remake.0.1.Huh.wav')
HuhSound.play()
def Yeah():
YeahSound = tkSnack.Sound(load='/home/me/resource/crowd.exe.remake/
wav/crowd.exe.remake.0.1.Yeah.wav')
YeahSound.play()

def Cool():
YeahSound = tkSnack.Sound(load='/home/me/resource/crowd.exe.remake/
wav/crowd.exe.remake.0.1.Yeah.wav')
YeahSound.play()


root.title("Foule controle")
root.geometry("157x178")
f1 = Frame(root, widthx , height= 138, bg="",bd=4 )
f1.pack(side = LEFT)
bou1=Button(f1, width =6,height=1, text='Aaah',commandªah)
bou1.pack()
bou2 =Button(f1, width =6,height=1, text='BoOOoo',command=BOo)
bou2.pack()
bou3=Button(f1, width =6,height=1,text='Clapping',command = Clap ping)
bou3.pack()
bou4=Button(f1, width =6,height=1,text='Huh ? ',command = Huh)
bou4.pack()

f2 = Frame(root, widthx , height= 138, bg="")
f2.pack(side =LEFT)


bou5=Button(f2, width =6,height=1,text='Oohh', command = Oohh)
bou5.pack()

bou6=Button(f2, width =6,height=1, text='WOW !',command = WOW)
bou6.pack()
bou7=Button(f2, width =6,height=1, text='Laughing',command = Laug hing)
bou7.pack()
bou8=Button(f2, width =6,height=1,text='Yeah',command=Yeah)
bou8.pack()


# frame pour accueillir le bouton exit
f3 = Frame(fen, width5, heightP )

f3.pack(side = BOTTOM)

# def Cool , encore besoin du code pour l exit
bou9=Button(f3, text='exit', command=Cool)
bou9.pack(side = BOTTOM)


root.mainloop()




Avatar
MC
Bonsoir !

Sous windows, pour les chemins, slash et antislash fonctionnent (on
peut même les mélanger).




--
@-salutations

Michel Claveau
Avatar
Encolpe Degoute
Bonsoir !

Sous windows, pour les chemins, slash et antislash fonctionnent (on peut
même les mélanger).



from os.path import sep, join

help(os.path)

--
Encolpe DEGOUTE
http://encolpe.degoute.free.fr/
Logiciels libres, hockey sur glace et autres activités cérébrales

Avatar
Eric Brunel
On Thu, 23 Aug 2007 21:01:38 +0200, wrote:
[snip]
j'aimerais mettre un bouton exit en tout en dessous , j'avais créer
une nouvelle frame , mais le bouton se met toujours a coté . (right)
au lieu d en bas bien que j'ai defini la nouvelle frame avec side > BOTTOM


Ca je sais répondre: je n'ai pas essayé ton code, mais si tu as un
"layout" un peu compliqué, évite d'utiliser pack... Ca devient très vite
l'enfer et tu ne comprends plus rien. Utiliser grid est un peu plus
compliqué, mais au final tu arriveras beaucoup plus facilement à faire ce
que tu veux.

Pour le reste, je laisse ça aux autres...

HTH
--
python -c "print ''.join([chr(154 - ord(c)) for c in
'U(17zX(%,5.zmz5(17l8(%,5.Z*(93-965$l7+-'])"

1 2