파이썬에는이 작업을 수행하는 데 많은 방법이 있습니다. 광대 한 오디오 라이브러리 없이도 파일을 비교할 수 있다고 생각합니다. 내가 틀렸을 수도있다. 그렇지 않으면 struct 모듈을 살펴보고 웨이브 파일을 읽을 수있는 정수로 변환하십시오. 이것을 사용해보십시오.
import wave
w_one = wave.open('file_one', 'r')
w_two = wave.open('file_two', 'r')
if w_one.readframes() == w_two.readframes():
print('exactly the same')
else:
print('not a match')
오디오 메시지 출력은 일반적인 것이 아니며 TTS 라이브러리를 사용하므로 인쇄하기 만하면됩니다. 큰 소리로 결과를 읽을 수 있습니다. 작동하는지 말해봐. 지금은 모바일에 있기 때문에 테스트 할 수는 없지만 제대로 작동합니다. 당신은 단지 뭔가를 말하면서 저장하고 다음을 사용하여 파이썬으로 실행시킬 수 있습니다.
import os
os.system('prerecorded message.wav')
오디오가 웨이브 파일인지 확인하십시오. 도움이 되었기를 바랍니다. 과학 박람회를 즐겁게 보내십시오!
오디오 파일이 비슷한 경우 원하는 경우 각 프레임을 가져 와서 분리 할 수있는 빈도 범위를 설정 한 다음 파일의 모든 지점에서 비교를 시작해야합니다. 그런 다음 범위에 있지 않고 파일의 다음 지점에서 시작할 때 반복되는 반복 루프를 만들어야합니다. 그것은 프로젝트, 행운을 빌어 먹을 것입니다! 배경 잡음에 대한 잡음 감소 알고리즘을 만들 수도 있습니다. 이는 복잡한 수학입니다.
정확도가인지 확인하려면 위 코드를 사용하십시오. 오디오를 스트리밍하는 경우에는 배경 잡음을 제거 할 수있는 방법이 없으므로 일부 모듈을 살펴보고 싶을 수도 있습니다. 또한 저장된 오디오 파일과 녹음 된 오디오 파일은 1/44000^s (s는 오디오의 시간 (초)입니다.) 정확하게 동일 할 확률. Alexa 서버를 사용해야 만 할 수도 있습니다.
파이썬으로 롤링하기가 어려울 수도 있지만 일단 이해의 장벽을 넘기 만하면 멋진 멋진 일을 할 수 있습니다. 나는 최근 파이썬의 거북이 용 그래픽 래퍼를 만들었는데, 나는 3D로 비행하는 로켓 우주선을 표시하도록 프로그래밍했다! 그것은 당신에게 그리스어처럼 들릴지도 모르거나별로 좋아하지 않을 수도 있습니다. 그러나 당신이 일을 그렇게 잘하는 것을 보는 것은 매우 멋집니다.
#Comparing them may be easier than I thought
from scipy.io.wavfile import read as wavread
[samplerate, y] = wavread('Comparison.wav')
[samplerate, z] = wavread('Recording.wav')
for x in range(0,samplerate,4): #Slight compression for the program to run faster.
y1,y2 = [y[x][0], y[x][1]] #y1,y2 are numbers for your in Comparison.wav. Use these to compare to file 2.
z1,z2 = [z[x][0], z[x][1]] #z1,z2 are numbers for you to compare.
#Install scipy by holding down the window's Button & R. Then type in
#pip install scipy
#You may have to press enter a few times to get it to work, but overall, be patient. You should be able to figure out how to compare the files from here.
아마존은 말하기를 얻는 장치 Alexa를 판매하고 아마존 서버로 보내어 텍스트로 다시 가져옵니다. 아마존 서버를 사용하여 파이썬 프로그램에서 만든 누군가가 음성을 인식합니다 (그리고 라즈베리 파이에서 실행될 수 있습니다) – furas