fileaudio = "/percorso/del/file.wav"
gst_init(0, 0)
lp = g_main_loop_new(0, False)
' Imposta gli elementi necessari per l'analisi del file audio:
lev = gst_parse_launch("filesrc location=" & fileaudio & " ! wavparse ! audioconvert ! level interval=1000000 ! audio/x-raw,channels=2 ! fakesink", 0)fileaudio = "http://radiogalileo.it:8000/low_latency"
gst_init(0, 0)
lp = g_main_loop_new(0, False)
' Imposta gli elementi necessari per l'analisi del file audio:
lev = gst_parse_launch("uridecodebin uri=" & fileaudio & " ! decodebin ! audioconvert ! level interval=1000000 ! jackaudiosink", 0)"http://radiogalileo.it:8000/low_latency"che tipo di formato è ?
da quello che noto, URIDECODEBIN dovrebbe fare questo, ovvero adeguare i suoi componenti interni (e' una specie di metaoggetto) al formato dell' URI in ingresso.L'analisi è corretta.
da shell funziona, da "libreria" chiamata in gambas pure ... usando gli stessi oggetti con gb.media si blocca nella fase di interconnessione del SOURCEAnche questo è vero: io pure ho constatato sempre che, usando i plugin di GStreamer che terminano con -bin (playbin, decodebin, etc), non è possibile con il Componente gb.media collegarli ad altri plugin necessari mediante il Metodo .LinkTo( ).
in questo caso il server e' un server ICECAST che suppongo sia un http transport, il flusso audio e' un aac plus 48Khz a 56KbpsIn tal caso si dovrebbe usare il plugin di GStreamer che decodifica il formato audio "aac".
pero' l'idea e' di avere una sorgente che "automaticamente" interpreti il formato del flusso.L'individuazione in sé del tipo di formato audio non è poi una cosa difficile.
Anche questo è vero: io pure ho constatato sempre che, usando i plugin di GStreamer che terminano con -bin (playbin, decodebin, etc), non è possibile con il Componente gb.media collegarli ad altri plugin necessari mediante il Metodo .LinkTo( ).
...insomma, potresti provare utilizzando il decodificatore per il formato AAC (anziché quello per il WAV).Codice: [Seleziona]' Imposta gli elementi necessari per l'analisi del file audio:
lev = gst_parse_launch("filesrc location=" & fileaudio & " ! wavparse ! audioconvert ! level interval=1000000 ! audio/x-raw,channels=2 ! fakesink", 0)
chi e' il mantainer di gb.media? devo stalkerizzarlo! :D
Quindi NON si puo' usare il metodo "LinkTo" ma va usato il metodo "LinkLATERto".In passato avevo intuito questa cosa, ma pur facendo alcuni tentativi non ero mai riuscito a risolvere il problema.