Conoscere la durata di un file Midi mediante il Componente gb.media
Da Gambas-it.org - Wikipedia.
Versione del 17 set 2022 alle 18:13 di Vuott (Discussione | contributi)
Per conoscere la durata di un file Midi, il Componente gb.media fornisce la Proprietà ".Duration" della Classe MediaPlayer. In particolare questa Proprietà restituisce un valore di tipo Float che rappresenta la durata del file Midi espresso in secondi.
Poiché tale proprietà ritorna più precisamente la durata dei dati processati, essa potrà essere utilizzabile solo successivamente all'attivazione della funzione ".Play()".
Mostriamo un essenziale esempio:
Public Sub Main() Dim mp As MediaPlayer With mp = New MediaPlayer .URL = Media.URL("/percorso/del/file.mid") .Audio.Mute = True .Play() Print "Durata del file Midi: " & CStr(Date(0, 0, 0, 0, 0, 0, .Duration * 1000)) .Stop() .Close() End With End
Se la Proprietà ".Duration" restituisce un valore = 0
Talvolta può accadere che la Proprietà ".Duration", ritardando la determinazione della durata de file Midi, restituisca un valore = 0.0.
In tal caso è sufficiente far precedere un ciclo, dal quale si uscirà soltanto quando la Proprietà ".Duration" restituirà un valore superiore a 0.0.
Repeat Wait 0.01 Until .Duration > 0.0 Print "Durata del file Midi: \e[34m"; Time(0, 0, 0, .Duration * 1000)