3dverkstan Buggfix Plus
Aktuellt datum och tid: 14.23 2014-08-23

Alla tidsangivelser är UTC + 1 timme




Svara på tråd  [ 13 inlägg ] 
Författare Meddelande
InläggPostat: 12.12 2006-03-08 
Användarvisningsbild

Blev medlem: 22.03 2004-08-18
Inlägg: 4838
Ort: Ånge
Leta efter något lämpligt program för att analysera ljudfiler.
Det jag är ute efter är vilka frekvenser som finns att hämta hur ljudströmmen, vilken magnitud osv.
Har aldrig kört med Matlab, annars kanske en FFT-analys där skulle vara att föredra?
Är det svårt att komma igång med Matlab för såna här ändamål? Finns det några bra tutorials på nätet?
Tacksam för alla tips!

Mvh
speakman

_________________
Visst är det snyggare med mindre text? Jag hinner ju ändå ingenting.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 12.20 2006-03-08 
Användarvisningsbild

Blev medlem: 22.39 2003-05-26
Inlägg: 661
Ort: Göteborg
Matlab skulle klara det enkelt, och på bästa sätt. Dock är det inget man köper, det är dyyyyrt. Är det en stor wavfil, behöver du göra det ofta? Är det en engångsgrej kan jag göra det om du vill, fast nu är jag på jobbet.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 13.14 2006-03-08 
Användarvisningsbild

Blev medlem: 22.03 2004-08-18
Inlägg: 4838
Ort: Ånge
Tack för erbjudandet. Ja, det är en wavfil, eller snarare en "raw"-fil som jag genererar i mitt egna program. Filen skulle i princip kunna se ut hur som helst.
Om du kan Matlab kanske du skulle vilja göra en grund för en FFT-analys som jag skulle kunna ha som referens?
Googlade runt lite, och det finns väldigt många tutorials för FFT i Matlab, men ett praktiskt exempel hade helt klart varit smidigt!

Mvh
speakman

_________________
Visst är det snyggare med mindre text? Jag hinner ju ändå ingenting.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 21.40 2006-03-08 
Användarvisningsbild

Blev medlem: 22.39 2003-05-26
Inlägg: 661
Ort: Göteborg
Detta kan du klistra in i en m-fil. Sedan döper du m-filen till exempelvis 'minfft.m' och sparar i din work-mapp. För att anropa m-filen skriver du helt enkelt 'minfft' i kommandofönstret.

Kod: [Expandera/Minimera] [Hämta] (Untitled.txt)
% Exempel på FFT i matlab. Förutsätter float32-kodad mono-fil.

% Samplingsfrekvens

Fs=44100;                       

% Upplösning på FFT i bitar.
% Ex 10 bitar = 1024 punkters upplösning

Bits=10;           

% Eftersom filen vi skall läsa kan vara i vilket format som helst,
% ser vi till att öppna vår fil binärt. Då gör man så här:

File_ID=fopen('G:\minfil.raw','r');

% nu kan vi läsa innehållet filen,
% alla samples läggs i en vektor "samples".

samples=fread(File_ID,inf,'float32');

% Periodtid sampling

Ts=1/Fs;           

% Antal sampel i filen

N=length(samples);

% Skapa tidsvektor

t=0:Ts:Ts*N-Ts;                 

% Skapa frekvensvektor upp till Fs/2 (Nyquist)

f=0:(Fs/2)/2^(Bits-1):Fs/2-(Fs/2)/(2^Bits-1);

% Plotta först originalsamplingen rätt upp och ner, i en övre graf

subplot(2,1,1);plot(t,samples);

% The magic

X=fft(samples,2^Bits);             

% Plottar i en undre graf absolutbeloppen av första halvan av fft'n. Absolutbelopp ty fft ger en real- och en imaginärdel.
% Den andra halvan av fft'n är ändå bara spegling av den första.

subplot(2,1,2); semilogx(f,abs(X(1:2^(Bits-1))))


Döds-lita inte på det här - jag är lite trött - men det ger ändå ett humm om hur upplägget ser ut.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 08.29 2006-03-09 
Användarvisningsbild

Blev medlem: 22.03 2004-08-18
Inlägg: 4838
Ort: Ånge
Tack!

Men som du säkert förstår så får jag inte direkt ut 32-bitars flyttal från ljudkortet, så om det gick att ändra till signed 16-bitar (little endian), så hade det helt klart varit enklare. :D
Ska installera mitt "nyinköpta" *host* *host* MatLab ikväll och se vad som går att göra!

Mvh
speakman

_________________
Visst är det snyggare med mindre text? Jag hinner ju ändå ingenting.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 12.56 2006-03-09 
EF Sponsor
Användarvisningsbild

Blev medlem: 09.40 2004-04-08
Inlägg: 1539
Ort: Uppsala
Prova det fria alternativet "octave" ("apt-get install octave"). Det är ett fritt alternativ till Matlab.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 14.38 2006-03-09 
Användarvisningsbild

Blev medlem: 22.39 2003-05-26
Inlägg: 661
Ort: Göteborg
Signed 16-bitar läser du genom att endast ändra följande rad:
samples=fread(File_ID,inf,'int16');


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 15.32 2006-03-09 
Co Admin
Användarvisningsbild

Blev medlem: 20.23 2005-08-06
Inlägg: 24351
Ort: Oskarshamn (En bit utanför)
cykze: Kan man köra det i terminal-läget (dvs utan något GUI installerat) ? Vore inte dumt isåfall. :)

_________________
Notera att inlägget kan ha expanderat under transporten. Nettovikten är dock låg. Läs bipacksedeln om du har lätt för att få irritation.. . . . . . . (°°)
This message will self-destruct in five seconds.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 16.02 2006-03-09 
EF Sponsor
Användarvisningsbild

Blev medlem: 09.40 2004-04-08
Inlägg: 1539
Ort: Uppsala
JimmyAndersson: Ja, octave körs i terminalen. Fast plotten visas grafiskt i ett X-fönster. Det kanske går att ställa in så att plotten visas i terminalen också.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 19.44 2006-03-09 
Användarvisningsbild

Blev medlem: 22.03 2004-08-18
Inlägg: 4838
Ort: Ånge
Octave is fan the shit asså!! :D

Mvh
speakman

_________________
Visst är det snyggare med mindre text? Jag hinner ju ändå ingenting.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 22.21 2006-03-09 
EF Sponsor
Användarvisningsbild

Blev medlem: 22.58 2005-10-01
Inlägg: 807
Ort: Torestorp
Kan rekomendera Cool_edit_pro_2 även Cool_edit_pro är OK.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 22.56 2006-03-09 
Användarvisningsbild

Blev medlem: 22.03 2004-08-18
Inlägg: 4838
Ort: Ånge
Kan man göra spektrumanalyser där?

_________________
Visst är det snyggare med mindre text? Jag hinner ju ändå ingenting.


Upp
 Profil  
 
 Inläggsrubrik:
InläggPostat: 23.05 2006-03-09 
EF Sponsor
Användarvisningsbild

Blev medlem: 22.58 2005-10-01
Inlägg: 807
Ort: Torestorp
Ja


Upp
 Profil  
 
Visa inlägg nyare än:  Sortera efter  
Svara på tråd  [ 13 inlägg ] 

Alla tidsangivelser är UTC + 1 timme


Vilka är online

Användare som besöker denna kategori: Inga registrerade användare och 1 gäst


Du kan inte skapa nya trådar i denna kategori
Du kan inte svara på trådar i denna kategori
Du kan inte redigera dina inlägg i denna kategori
Du kan inte ta bort dina inlägg i denna kategori
Du kan inte bifoga filer i denna kategori

Sök efter:
Hoppa till:  
    3dverkstan
Drivs av phpBB® Forum Software © phpBB Group
Swedish translation by Peetra & phpBB Sweden © 2006-2010