PDA

View Full Version : Oscilloscopio in C++,che librerie grafiche?


parisisalvo
02-07-2005, 18:19
Salve!
Sono sempre io, sono sotto linux...
tramite ALSA, leggo l'input da scheda sonora, leggo 44100 campioni al secondo...dovrei plottarli, come?
sto usando le GTK (sfruttando l'oggetto AREA DI DISEGNO), va bene? o ci sono strumenti più semplici,più potenti?
(finestra 600x200 pixel)
Dato che 1/44100 = 22.7 usec.
Se un pixel = un campione ho 600x22.7(usec) = 13606usec (ossia una finestra di 600pixel corrisponde a 13.6 millisecondi).
Quindi per dare l'idea di movimento dovrei aggiornare, pixel per pixel (o quasi)
cioe' disegnare i 600pixel, cancellare l'intera e ridisegnare i 600 pixel traslati di 1 (uno nuovo che entra a sinistra, uno vecchio che esce da destra).
Ahime, ho sempre programmato in formato testo, o al massimo tramite ncurses...quindi non so computazionalmente se è una operazione molto onerosa, e che librerie possa usare. HELP ?

Goldrake_xyz
02-07-2005, 22:43
Ci sono anch'io,
Il problema interessa anche a mè ... :D

ilsensine
03-07-2005, 11:12
Devi per forza realizzare un programma tuo o puoi usarne uno già fatto?
http://xoscope.sourceforge.net/

lucapetra
08-07-2005, 10:55
E' anche un problema mio. Stavo provando ad usare le librerie Gtk e Gdk sfruttando glade per creare l'interfaccia. Il problema è che il tutto funziona ad eventi. Se io volessi aggiornare la mia drawing area ogni tot millisecondi devo generare un evento che mi faccia entrare nella callback di aggiornamento della drawingarea. Dato che a me serve un aggiornamento continuo della drawing area avevo pensato ad una chiamata ricorsiva dell'evento setesso, cioè l'evento genera se stesso ed effetivamente la cosa funziona. Il problema, ovviamente, è che computazionalmente è una cosa improponibile perchè dopo un certo tempo avrò riempito lo stack. Questo però lo avevo messo in conto; quello che non avevo considerato è che durante la gestione di un evento è come se venissero disattivati i gestori degli altri eventi!!! Se qualcuno riuscisse a darmi una mano...

Passy
08-07-2005, 13:48
vi seguo