08/06/19 8:29
orma674
Buongiorno,
qualcuno mi sa aiutare a trovare un metodo per velocizzare il disegno di una waveform.
Attualmente apro il file wav e dopo aver letto i valori dei byte li passo alla classe graphics e poi li visualizzo.
Dim bp as new bitmap(width, height)
dim g as graphics = graphics.fromImage(bp)
dim x1 as int64
dim y1 as int32
for count as int 64 = 0 to data.count -1
dim x2 as int64 = count
dim y2 as int32 = data(count)
g.drawLine(pen.red, x1, y1, x2, y2)
next
picturebox1.image = bp
g.dispose()
Il problema che ho è che una volta costruita la waveform, se io voglio spostare il punto di partenza la deve ricostruire sempre e parlando di grosse quantità di dati, questo genera un rallentamento nella visualizzazione della stessa.
Se qualcuno ha dei suggerimenti su come posso snellire questa procedura.
Io devo implementare lo zoom e lo spostamento.
per lo zoom non vorrei ricorrere alla lettura a step dei dati della waveform ma ad allargare la distanza x tra i punti.
Grazie per l'aiuto.
Marcello
qualcuno mi sa aiutare a trovare un metodo per velocizzare il disegno di una waveform.
Attualmente apro il file wav e dopo aver letto i valori dei byte li passo alla classe graphics e poi li visualizzo.
Dim bp as new bitmap(width, height)
dim g as graphics = graphics.fromImage(bp)
dim x1 as int64
dim y1 as int32
for count as int 64 = 0 to data.count -1
dim x2 as int64 = count
dim y2 as int32 = data(count)
g.drawLine(pen.red, x1, y1, x2, y2)
next
picturebox1.image = bp
g.dispose()
Il problema che ho è che una volta costruita la waveform, se io voglio spostare il punto di partenza la deve ricostruire sempre e parlando di grosse quantità di dati, questo genera un rallentamento nella visualizzazione della stessa.
Se qualcuno ha dei suggerimenti su come posso snellire questa procedura.
Io devo implementare lo zoom e lo spostamento.
per lo zoom non vorrei ricorrere alla lettura a step dei dati della waveform ma ad allargare la distanza x tra i punti.
Grazie per l'aiuto.
Marcello
aaa