J'utilise this guide pour transformer mon Raspberry Pi en émetteur FM. Je peux enregistrer l'audio, scp
dessus et ensuite le jouer en utilisant la méthode décrite dans le guide. Mon but est d'utiliser un microphone sur mon PC principal pour diffuser de l'audio sur le réseau vers le Pi, avec le tuyau vers le programme PiFm.Diffusion audio vers la radio Raspberry Pi
Je n'arrive pas du tout à lire un fichier audio, même localement sur le Pi. Voici la méthode prescrite pour la lecture d'un fichier audio à l'aide IPME:
sudo python
>>> import PiFm
>>> PiFm.play_sound("sound.wav")
J'ai essayé d'ajouter fileinput
au fichier PiFm.py en utilisant this method mais lorsque je tente de donner un fichier WAV comme un argument, ou un tuyau dans, je reçois l'erreur suivante:
[email protected] ~/radio $ sudo python PiFm.py sound.wav
Traceback (most recent call last):
File "PiFm.py", line 11, in <module>
play_sound(line)
File "PiFm.py", line 7, in play_sound
call(["./pifm", filename])
File "/usr/lib/python2.7/subprocess.py", line 493, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1259, in _execute_child
raise child_exception
TypeError: execv() arg 2 must contain only strings
Voici mon fichier PiFm.py:
#!/usr/bin/python
from subprocess import call
import fileinput
def play_sound(filename):
call(["./pifm", filename])
return
for line in fileinput.input():
play_sound(line)