Audioread di una porzione di file audio

di il
1 risposte

Audioread di una porzione di file audio

Buongiorno, ho bisogno di leggere un file audio in una sua porzione ad esempio da 3.5 secondi a 6.8 come faccio?
Ho usato 4000 come frequenza di campionamento ma non riesco a capire come unirlo alla durata a livello pratico

1 Risposte

  • Re: Audioread di una porzione di file audio

    Se usi la funzione "audioread" per leggere il file audio, non dovresti specificare la frequenza di campionamento visto che questa è uno degli output della funzione.

    La cosa più semplice che puoi fare è leggere il file audio con "audioread" specificando i due parametri di output (es. [samples,Fc]=audioread(filename)).

    Dal momento che conosci il tempo di inizio e fine della porzione che vuoi estrarre, ti basterà identificare il sub-set di elementi del vettore "samples" che corrisponde all'intervallo stesso.
    Questo puoi farlo facilmente moltiplicando i valori di inizio e fine (in second) per la frequenza di campionamento (il secondo output della funzione "audioread").

    Questi due valori saranno gli indici di inizio e fine della sequenza per cui, se "samples" è il vettore con tutti i campioni, sub_samples=samples(t_inizio * Fc : t_fine * Fc) sarà il vettore che contiene la sequenza che vuoi estrarre.

    Puoi riprodurre la sequanza con la funzione "play" dopo aver creato il relativo "object" con la funzione "audioplayer".
    Puoi salvare il file audio della sequenza estratta con la funzione "audiowriter"

    Per i dettagli sulle varie funzioni puoi fare riferimento alla documentazione on-line
Devi accedere o registrarti per scrivere nel forum
1 risposte