我已经为数据加密编写了AES,我的代码能够加密文本文件,同时一次挑选32个字节......我现在也想加密录制的语音,
这是我到目前为止所做的,
import pyaudio
import wave
import sys
CHUNK = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 2
RATE = 44100
RECORD_SECONDS = 5
WAVE_OUTPUT_FILENAME = "R_Voice.wav"
p = pyaudio.PyAudio()
stream = p.open(format=FORMAT,
channels=CHANNELS,
rate=RATE,
input=True,
frames_per_buffer=CHUNK)
print("The Voice is being Recorded........")
frames = []
for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
data = stream.read(CHUNK)
frames.append(data)
print (frames)
f = open("abc.txt",'w')
f.write(str(frames))
f.close()
frames[]
由录制语音的十六进制数据组成我想将此数据作为字符串写入文件,所以我这样做了(如上所示)
f.write(str(frames))
但是当我在执行程序后看到文件abc.txt
中的数据时,它就是这种形式,完整的数据在一行中,通常会挂起我的Raspberry Pi。
['7\xe47\xe4O\xe4O\xe4N\xe4N\xe4A\xe4A\xe4F\xe4F\xe4C\xe4C\xe4H\xe4H\xe4Y\x
我应该如何将其转换为字符串以便我可以对其进行加密?
答案 0 :(得分:1)
使用
with open("filename", 'w') as outFile:
for frame in frames:
outFile.write(frame)
将所有帧作为字节流连接到该文件中。