Passa al tema normale
Discussioni su argomenti di Informatica

Regole del forum

Consulta il nostro regolamento e la guida per scrivere le formule
Rispondi al messaggio

[MatLab] Esercizio con sinusoide

28/11/2019, 16:42

Mi trovo davanti un esercizio che concettualmente non mi reca nessun problema ma nell'esecuzione sto facendo un errore che non riesco purtroppo a trovare. Il testo dell'esercizio è il seguente:
Devo caricare in MatLab un file audio passato dal professore, questo dovrà poi essere aperto (e fin qui ovviamente nessun problema).
Ora devo creare un'onda sinusoidale a 10kHz con ampiezza 0,3, campionata a 32kHz della durata pari a quella dell'audio precedente. Dopodichè devo sommare i due e dividere il risultato per 1,2 salvando questo su un nuovo file audio. L'errore è dimostrato perchè ascoltando il file originale e quello prodotto da me non c'è nessuna differenza che dovrebbe invece esserci.

Io ho scritto questo codice per creare l'onda:

y1=0.3*sin(2*pi*10000*length(y));

y2=(y+y1)/0.5;

audiowrite('noise.wav',y,fs)

Qualcuno potrebbe aiutarmi a trovare l'errore? Vi ringrazio

Re: [MatLab] Esercizio con sinusoide

28/11/2019, 19:49

Suppongo che per creare l'onda tu volessi campionare la sinusoide su diversi valori, mentre la stai calcolando solo su un singolo valore. Mi aspetterei tu faccia uso di qualcosa come linspace per ottenere i tempi e poi passare questo vettore come argomento a sin.

Re: [MatLab] Esercizio con sinusoide

29/11/2019, 11:05

Ci avevo pensato, ma non sapevo bene come impostare i valori, ho provato in questo modo:

dt=1/fs; %periodo di campionamento
x=length(y); %lunghezza vettore dove è caricato file audio
t=linspace(0,dt,x);
y1=0.3*sin(2*pi*1000*t); %questa cosa da zero e non una sinusoide
y2=y1';

dopodichè ho sommato l'onda sinusoidale con il file audio che avevo, il risultato non è cambiato, ottengo esattamente un segnale uguale. Dove sto sbagliando ora?
Rispondi al messaggio


Skuola.net News è una testata giornalistica iscritta al Registro degli Operatori della Comunicazione.
Registrazione: n° 20792 del 23/12/2010.
©2000— Skuola Network s.r.l. Tutti i diritti riservati. — P.I. 10404470014.