Rezolvat: codul sursă pentru îndepărtarea vocală python

Problema principală cu codul sursă pentru eliminarea vocală python este că nu este open source. Aceasta înseamnă că codul nu este disponibil pentru ca oricine să îl revizuiască și să îl poată îmbunătăți. Acest lucru poate duce la probleme cu fiabilitatea software-ului și calitatea generală.

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

Acest cod importă diferite biblioteci care vor fi folosite în funcția vocal_remover.

Funcția vocal_remover preia o intrare a unui nume de fișier și citește în fișierul audio folosind biblioteca wavfile.

Apoi ia valoarea absolută a semnalului și găsește lungimea semnalului.

Semnalul este apoi trecut printr-o transformată Fourier, care creează o listă de frecvențe corespunzătoare lungimii semnalului.

Toate frecvențele de peste 1000 Hz sunt setate la 0 în transformarea Fourier. Acest lucru se datorează faptului că majoritatea vocilor se află în acest interval de frecvențe.

Transformarea Fourier inversă este luată pentru a reveni în domeniul timpului, iar acest semnal final este returnat de funcție.

Lucrați cu personaje

Există câteva moduri de a lucra cu personaje în Python. O modalitate este de a folosi funcția str() pentru a obține o reprezentare șir a unui caracter. De exemplu, următorul cod tipărește litera „a” pe ecran:

print(„Litera „a”.”)

O altă modalitate de a lucra cu caractere în Python este să folosești funcția chr(). Această funcție ia un număr întreg ca intrare și returnează un caracter corespunzător numărului respectiv. De exemplu, următorul cod tipărește litera „a” pe ecran:

print(„caracterul „a” este”)
chr(1)

Text și obiecte

În Python, textul este reprezentat de o secvență de caractere Unicode. Obiectele sunt, de asemenea, secvențe de caractere Unicode, dar pot conține și alte tipuri de date, cum ar fi numere și șiruri.

Postări asemănatoare:

Lăsați un comentariu