Dhibka ugu weyn ee ka haysta cod ka saarista isha koodka python waa in aanu ahayn il furan. Tani waxay ka dhigan tahay in koodka uusan diyaar u ahayn qofna inuu dib u eego oo laga yaabo inuu horumariyo. Tani waxay u horseedi kartaa dhibaatooyin xagga kalsoonida software-ka iyo tayada guud.
import numpy as np import matplotlib.pyplot as plt from scipy.io import wavfile from scipy import signal from scipy.fftpack import fft, ifft import os def vocal_remover(filename): # read in audio file fs, data = wavfile.read(filename) # take the absolute value of the signal data = np.absolute(data) # find the length of the signal N = len(data) # take the Fourier Transform of the signal fourier = fft(data) # create a list of frequencies corresponding to the length of the signal freqs = np.fft.fftfreq(N, 1/fs) # find all frequencies above 1000 Hz (1 kHz) and set them to 0 in Fourier Transform for i in range (len(fourier)): if abs(freqs[i]) > 1000: fourier[i] = 0+0j # take inverse Fourier Transform to get back to time domain inverse_fourier = ifft(fourier).real return inverse_fourier
Xeerkani waxa uu soo dejinayaa maktabado kala duwan oo loo isticmaali doono shaqada vocal_remover.
Hawsha vocal_remover waxay qaadataa galinta magaca faylalka, waxayna ku akhridaa faylka maqalka ah iyadoo la isticmaalayo maktabadda wavfile.
Kadibna waxay qaadataa qiimaha saxda ah ee calaamadda, waxayna helaysaa dhererka calaamadda.
Calaamadaha ayaa markaa la dhex dhigayaa Fourier Transform, kaas oo abuuraya liis jeermisyo u dhigma dhererka calaamadda.
Dhammaan inta jeer ee ka sarreeya 1000 Hz waxaa lagu dejiyay 0 gudaha Fourier Transform. Tani waa sababta oo ah codadka badankoodu waxay ku dhex jiraan tiradan soo noqnoqoshada.
Beddelka Fourier-ka ee rogan waxa loo qaadaa si loogu soo noqdo xayndaabka wakhtiga, iyo calaamaddan kama dambaysta ah waxaa soo celisa shaqada.
La shaqee jilayaasha
Waxaa jira dhowr siyaabood oo loogu shaqeeyo jilayaasha Python. Hal dariiqo ayaa ah in la isticmaalo shaqada str() si aad u hesho matalaad xardhan oo jile ah. Tusaale ahaan, koodka soo socdaa wuxuu ku daabacaa xarafka "a" shaashadda:
daabac (" Xarafka 'a'.")
Hab kale oo lagula shaqeeyo jilayaasha Python waa in la isticmaalo shaqada chr (). Shaqadani waxay u qaadanaysaa shaandheyn ahaan gelinta ahaan waxayna soo celinaysaa xaraf u dhiganta lambarkaas. Tusaale ahaan, koodka soo socdaa wuxuu ku daabacaa xarafka "a" shaashadda:
daabac ("dabeecada 'a' waa")
chr (1)
Qoraalka iyo walxaha
Python dhexdeeda, qoraalka waxa u taagan taxanaha xarfaha Unicode. Walaxyadu sidoo kale waa taxanaha xarfaha Unicode, laakiin sidoo kale waxay ka koobnaan karaan noocyo kale oo xog ah, sida tirooyinka iyo xargaha.