J'étais intéressé par la programmation de l'analyse vocale, mais je ne l'ai jamais écrite, alors je l'ai essayé.
Je suis un amateur, mais je sais ce qui suit, alors je voulais demander ce qui se passerait si la musique était déphasée.
Au début, je pensais l'écrire en Go, mais j'ai abandonné parce que je n'avais pas de bon paquet. ٩ (๑òωó๑) ۶ Je l'écrirai un jour
J'ai utilisé python parce qu'il y avait une bibliothèque appelée pydub
qui contenait tout ce que je voulais faire.
Comme prévu Python.
Le système d'analyse est solide
Bang bang bang bang bang bang Bang bang bang bang Bang (∩` ・ ω ・) Bang Bang _ / _Mitsu /  ̄ ̄ ̄ / \/___/ ̄ ̄
#Il semble être utilisé dans pydub
brew install ffmpeg
pip install pydub
#Utilisé pour tracer la forme d'onde
pip install matplotlib
** Données utilisées ** Chopin: Valse n ° 6 dans Weird D Major Op.64-1 《Puppy Waltz》 http://classical-sound.seesaa.net/article/211557687.html Tout allait bien si c'était une chanson courte
Pour le moment, j'écoutais la musique anti-phase qui était le but initial.
from pydub import AudioSegment
from pydub.playback import play
#Load an audio file
myAudioFile = "test.mp3"
sound1 = AudioSegment.from_mp3(myAudioFile)
# Invert phase of audio file
sound2 = sound1.invert_phase()
# play audio data
play(sound2)
(゚ д ゚) Poker (écoutez maintenant ...)
\ (^ O ^) / ... Je ne comprends pas vraiment la différence! !! \ (^ O ^) / ... Peut-être que ce n'était pas bien écrit! ??
from pydub import AudioSegment
from pydub.playback import play
import numpy as np
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings("ignore")
#Load an audio file
myAudioFile = "test.mp3"
sound1 = AudioSegment.from_mp3(myAudioFile)
plot audio data
data = np.array(sound1.get_array_of_samples())
x = data[::sound1.channels]
plt.plot(x[::100000])
plt.grid()
plt.show()
# Invert phase of audio file
sound2 = sound1.invert_phase()
plot audio data
data = np.array(sound2.get_array_of_samples())
xr = data[::sound2.channels]
plt.plot(xr[::100000])
plt.grid()
plt.show()
Données saisies
Phase opposée
Certes, la phase est inversée.
Pourtant, j'étais inquiet, alors j'ai essayé de synthétiser des données musicales. S'il est vraiment déphasé, il devrait être silencieux si vous combinez les données musicales d'entrée avec les données déphasées! !!
from pydub import AudioSegment
from pydub.playback import play
#Load an audio file
myAudioFile = "test.mp3"
sound1 = AudioSegment.from_mp3(myAudioFile)
# Invert phase of audio file
sound2 = sound1.invert_phase()
#Merge two audio files
combined = sound1.overlay(sound2)
# play audio data
play(combined)
Oh, pas de son! !! Σ (゜ □ ゜)
Tracer le résultat après synthèse
from pydub import AudioSegment
from pydub.playback import play
import numpy as np
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings("ignore")
#Load an audio file
myAudioFile = "test.mp3"
sound1 = AudioSegment.from_mp3(myAudioFile)
plot audio data
data = np.array(sound1.get_array_of_samples())
x = data[::sound1.channels]
plt.plot(x[::100000])
plt.grid()
plt.show()
# play
play(sound1)
# Invert phase of audio file
sound2 = sound1.invert_phase()
plot audio data
data = np.array(sound2.get_array_of_samples())
xr = data[::sound2.channels]
plt.plot(xr[::100000])
plt.grid()
plt.show()
# play audio data
play(sound2)
# Export merged audio file
sound2.export("invert_phase.mp3", format="mp3")
#Merge two audio files
combined = sound1.overlay(sound2)
data = np.array(combined.get_array_of_samples())
xr = data[::combined.channels]
plt.plot(xr[::100000])
plt.grid()
plt.show()
# play audio data
play(combined)
# #Export merged audio file
combined.export("combined.mp3", format="mp3")
C'est étrange, mais je ne pouvais pas faire la différence simplement en écoutant la musique anti-phase. Je vais étudier un peu plus et recommencer. Je pense que vous pouvez le reproduire en traçant l'article, donc si vous êtes intéressé, essayez-le
Recommended Posts