【发布时间】:2020-01-13 05:17:48
【问题描述】:
我已经录制了一个音频文件,我正在将该文件转换为 base64 格式。现在我想将此音频文件写入 fifo 文件。 代码如下:
import os
import base64
import select
os.system("mkfifo audio1.fifo")
with open("audio1.fifo") as fifo:
select.select([fifo],[],[fifo])
with open("out1.wav","rb") as audioFile:
str = base64.b64encode(audioFile.read())
fifo.write(str)
但是上面的代码只创建了fifo文件,没有在里面写任何东西。请给点建议。
【问题讨论】:
-
你打开对面阅读了吗?
-
您使用什么作为阅读器?请问如何启动/运行它?
-
@MisterMiyagi 我打开了需要写入数据的fifo文件。你说的另一面先生是什么意思??
-
FIFO 用于交换数据,而不是存储数据。如果另一端没有任何东西可以接收数据,通常无法写入。引用the linux man page:“FIFO 必须在两端(读取和写入)都打开,然后才能传递数据。”
-
@MisterMiyagi 你能告诉我是否想从树莓派 3b 的 uart 读取音频数据并在 3.5mm 音频插孔同时播放相同的数据(考虑到我正在传输来自发射器端Raspberry pi的一些音频数据)。怎么做??
标签: python raspberry-pi raspbian gpio