Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Önálló laboratórium II. - 2005. május 23.1 Mobiltelefonon futtatható program készítése Hegedűs Iván Mihály Pázmány Péter Katolikus Egyetem Információs.

Hasonló előadás


Az előadások a következő témára: "Önálló laboratórium II. - 2005. május 23.1 Mobiltelefonon futtatható program készítése Hegedűs Iván Mihály Pázmány Péter Katolikus Egyetem Információs."— Előadás másolata:

1 Önálló laboratórium II. - 2005. május 23.1 Mobiltelefonon futtatható program készítése Hegedűs Iván Mihály Pázmány Péter Katolikus Egyetem Információs Technológiai Kar

2 Önálló laboratórium II. - 2005. május 23.2 Feladat Működő programok készítése Időkeretek kialakítása Beszédmintákból spektrális jellemzők kinyerése megfelelő algoritmussal Mit sikerült megvalósítani?

3 Önálló laboratórium II. - 2005. május 23.3 Audio input stream A készülék beépített mikrofonját használja a felvétel készítéséhez. Alkalmassá tehető valós idejű felvétel készítésére. Közvetlenül a készülék pufferében szakaszonként tárolja a mintákat, amelyekből az adatokat szeretnénk kinyerni. Alkalmas még a rögzített hang visszajátszására is. Támogatja UIQ platformot is megfelelő kiegészítő csomaggal

4 Önálló laboratórium II. - 2005. május 23.4 Audio input stream módosítások Több mintavétel Puffer méret Zero-Crossing és puffer maximum Dinamikus tömb 32 bites konverzió const TInt KBufferSize = 2048; // A buffer mérete, 1024 minta. … int meret = aBuffer.Size(); meret=meret/2; TReal32 * mintabe = new TReal32[meret]; // A dinamikus tömb. for (int i=0;i<aBuffer.Size()/2;i++) { tmp= aBuffer[i*2]+aBuffer[i*2+1]*256; mintabe[i]=TReal32(tmp); // Értékek átvétele }

5 Önálló laboratórium II. - 2005. május 23.5 FFT - Fast Fourier Transformation Rendelkezésünkre állt egy négyzetes FFT Implementáció: C kód  Objektumorientáltság  Symbian Köszönet Bárdi Tamásnak! Emulátor vs. Készülék

6 Önálló laboratórium II. - 2005. május 23.6 FFT és Audió input stream int meret = aBuffer.Size(); meret=meret/2; TReal * x = new TReal[meret];// saját tömb FFT * f = new FFT(); TInt16 tmp, // átmeneti buffer infó mx=0, // maximális buffer érték zc=0, // zero-crossing elo=0; // előző for (int i=0;i<aBuffer.Size()/2;i++) { tmp=aBuffer[i*2]+aBuffer[i*2+1] *256; x[i]=TReal(tmp); if (elo*tmp < 0) zc++; if (abs(tmp) > mx) mx=abs(tmp); elo=tmp; } f->itkRealFFT(x,meret); for(i=0;i<meret;i++){ if (x[i]>0) buf.AppendNum(x[i],TRealFormat()); i=meret+1; } A két program egyesítése a cél A felvett mintákon FFT alkalmazása Emulátoron működik Készülékre nem fordul A Series 60 rejtélye?

7 Önálló laboratórium II. - 2005. május 23.7 Rekurzív FFT algoritmus Lassú és erőforrás igényes!!!

8 Önálló laboratórium II. - 2005. május 23.8 WavPayer Saját fejlesztés „CMdaAudioPlayerUtility” egyszerű hangkezelést biztosít Egy wav fájl lejátszása Tovább fejlesztési lehtőség  Recorder és Lejátszandó fájlok kiválasztása

9 Önálló laboratórium II. - 2005. május 23.9 Összegzés Sajnos még vannak emulátor és készülék problémák (kódeltérés) Vannak bíztató eredményeink! Saját programok! Sikerült megvalósítani a mintaelemzést! Jó csapatmunka gyömölcse!

10 Önálló laboratórium II. - 2005. május 23.10 Köszönöm a figyelmet!


Letölteni ppt "Önálló laboratórium II. - 2005. május 23.1 Mobiltelefonon futtatható program készítése Hegedűs Iván Mihály Pázmány Péter Katolikus Egyetem Információs."

Hasonló előadás


Google Hirdetések