将音频流式传输到 Raspberry Pi 收音机

问题描述 投票:0回答:1

我正在使用 本指南 将我的 Raspberry Pi 变成 FM 发射器。我可以录制音频,

scp
,然后使用指南中描述的方法播放它。我的目标是使用主 PC 上的麦克风将音频通过网络传输到 Pi,并将其传输到 PiFm 程序。

我似乎根本无法通过管道输入音频文件,即使是在 Pi 本地也是如此。以下是使用 PiFm 播放声音文件的规定方法:

sudo python
>>> import PiFm
>>> PiFm.play_sound("sound.wav")

我尝试使用

此方法
fileinput添加到PiFm.py文件中,但是当我尝试给它一个WAV文件作为参数,或将其通过管道输入时,我收到以下错误:

pi@raspberrypi ~/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

这是我的 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)
python raspberry-pi fm-radio
1个回答
0
投票

尝试:

PiFm.play_sound(u'sound.wav'.encode('utf8'))
© www.soinside.com 2019 - 2024. All rights reserved.