Bonjour,
je code depuis plus d'un an en Python sur un Raspberry pi 3b+, et depuis peu sur un Zero. Et donc forcement c'est pas très rapide le Python dessus.
le projet est une petite boite à rythme: Des boutons (sur les GPIO) et des fichier .wav à déclenché "rapidement" suite à l'appuis des boutons donc...
En python ça marche mais y a une latence trop importante sur le Zero, sur le 3b+ ça passe encore, et je pense que si j'investi un 4 ça le fera.
Mais le Zero est intéressant pour la petite taille
Mes question ou demande d'aide sont:
- pensez-vous qu'en codant en C la parti Bouton/lecture de .wav je gagnerai au niveau de la latence?
- est-il possible de faire un script C utilisable avec mon script Python, comme Cython ou quelque chose de similaire..
-j'aimerai aussi un petit coup de main sympa pour m'aider à faire un mini script C pour comparer la latence sur le Zero.
en Python voila mon script:
Code Python : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 from gpiozero import Button import pygame.mixer pygame.mixer.init() userCHANNEL1 = pygame.mixer.Channel(0) userCHANNEL2 = pygame.mixer.Channel(1) userCHANNEL3 = pygame.mixer.Channel(2) userCHANNEL4 = pygame.mixer.Channel(3) snd1 = pygame.mixer.Sound('son1.wav') snd2 = pygame.mixer.Sound('son2.wav') snd3 = pygame.mixer.Sound('son3.wav') snd4 = pygame.mixer.Sound('son4.wav') def MakeSound(): if pad1.is_pressed:userCHANNEL1.play(snd1) elif pad2.is_pressed:userCHANNEL2.play(snd2) elif pad3.is_pressed:userCHANNEL3.play(snd3) elif pad4.is_pressed:userCHANNEL4.play(snd4) pad1 = Button(23) pad2 = Button(18) pad3 = Button(24) pad4 = Button(15) pad1.when_pressed = MakeSound pad2.when_pressed = MakeSound pad3.when_pressed = MakeSound pad4.when_pressed = MakeSound
je ne sais pas par ou commencer pour faire la même chose en C.
J'utilise les lib GPIOzero et Pygame inclue dans Raspbian Buster par facilité.
Donc je suppose qu'il me faut des lib pour le C, mais je suis perdu, sans compter que "C" pour google c'est pas très parlant^^
voila si vous pouviez m'orienter sur des exemple ou tuto orienter spécifiquement pour Coder un petit test histoire de voir si en C le Raspberry Pi Zero peu faire tourner mon application.
merci a vous pour votre aide, je suis totalement débutant donc il manque surement quelque information dans mon message, n'hésitez pas à me dire quoi pour avancer
Partager