Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将语音数据作为字符串记录和写入文件以进行加密_Python_Audio_Encryption_Aes_Audio Recording - Fatal编程技术网

Python 将语音数据作为字符串记录和写入文件以进行加密

Python 将语音数据作为字符串记录和写入文件以进行加密,python,audio,encryption,aes,audio-recording,Python,Audio,Encryption,Aes,Audio Recording,我已经为数据加密编写了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() s

我已经为数据加密编写了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[]
由录制语音的十六进制数据组成。我想将这些数据作为字符串写入文件,所以我这样做了(如上所示)

但是,当我在执行程序后看到文件
abc.txt
中的数据时,它是这种形式的,完整的数据在一行中,通常挂起我的Raspberry Pi

['7\xe47\xe4O\xe4O\xe4N\xe4N\xe4A\xe4A\xe4F\xe4F\xe4C\xe4C\xe4H\xe4H\xe4Y\x
如何将其转换为字符串以便对其进行加密?

使用

with open("filename", 'w') as outFile:
  for frame in frames:
    outFile.write(frame)

将所有帧作为字节流连接到该文件中。

看起来像python,所以我将其标记为python。如果我错了,请纠正我。您将输入数据存储为文本表示。您需要将其保存为:f=open(“abc.txt”,“wb”);f、 写入(帧)顺便说一句:如果使用
打开
文件,则无需
关闭该文件<代码>与
一起处理。
with open("filename", 'w') as outFile:
  for frame in frames:
    outFile.write(frame)