Differenze tra le versioni di "Eseguire due o più file audio contemporaneamente mediante la Classe ''MediaPipeline'' del componente gb.media"
Da Gambas-it.org - Wikipedia.
(Creata pagina con "Mostriamo di seguito un esempio pratico per eseguire contemporaneamente due file audio (in questo caso di formato WAV) mediante la Classe ''MediaPipeline'' del Componente ''gb...") |
|||
Riga 5: | Riga 5: | ||
Dim pl As MediaPipeline | Dim pl As MediaPipeline | ||
Dim src, src2, wap, wap2, res, res2, con, con2, vol, vol2, pan, pan2, mix, snk As MediaControl | Dim src, src2, wap, wap2, res, res2, con, con2, vol, vol2, pan, pan2, mix, snk As MediaControl | ||
− | |||
− | |||
− | |||
pl = New MediaPipeline | pl = New MediaPipeline | ||
Riga 13: | Riga 10: | ||
<FONT Color=gray>' ''Primo file audio wav:''</font> | <FONT Color=gray>' ''Primo file audio wav:''</font> | ||
src = New MediaControl(pl, "filesrc") | src = New MediaControl(pl, "filesrc") | ||
− | src["location"] = | + | src["location"] = "<FONT Color=gray>''/percorso/del/primo/file.wav''</font>" |
wap = New MediaControl(pl, "wavparse") | wap = New MediaControl(pl, "wavparse") | ||
res = New MediaControl(pl, "audioresample") | res = New MediaControl(pl, "audioresample") | ||
Riga 24: | Riga 21: | ||
<FONT Color=gray>' ''Secondo file audio wav:''</font> | <FONT Color=gray>' ''Secondo file audio wav:''</font> | ||
src2 = New MediaControl(pl, "filesrc") | src2 = New MediaControl(pl, "filesrc") | ||
− | src2["location"] = "/ | + | src2["location"] = "<FONT Color=gray>''/percorso/del/secondo/file.wav''</font>" |
wap2 = New MediaControl(pl, "wavparse") | wap2 = New MediaControl(pl, "wavparse") | ||
res2 = New MediaControl(pl, "audioresample") | res2 = New MediaControl(pl, "audioresample") |
Versione delle 15:43, 12 ago 2018
Mostriamo di seguito un esempio pratico per eseguire contemporaneamente due file audio (in questo caso di formato WAV) mediante la Classe MediaPipeline del Componente gb.media:
Public Sub Main() Dim pl As MediaPipeline Dim src, src2, wap, wap2, res, res2, con, con2, vol, vol2, pan, pan2, mix, snk As MediaControl pl = New MediaPipeline ' Primo file audio wav: src = New MediaControl(pl, "filesrc") src["location"] = "/percorso/del/primo/file.wav" wap = New MediaControl(pl, "wavparse") res = New MediaControl(pl, "audioresample") con = New MediaControl(pl, "audioconvert") vol = New MediaControl(pl, "volume") vol["volume"] = 0.8 pan = New MediaControl(pl, "audiopanorama") pan["panorama"] = 1.00 ' Pan a destra ' Secondo file audio wav: src2 = New MediaControl(pl, "filesrc") src2["location"] = "/percorso/del/secondo/file.wav" wap2 = New MediaControl(pl, "wavparse") res2 = New MediaControl(pl, "audioresample") con2 = New MediaControl(pl, "audioconvert") vol2 = New MediaControl(pl, "volume") vol2["volume"] = 0.2 pan2 = New MediaControl(pl, "audiopanorama") pan2["panorama"] = -1.00 pan a destra mix = New MediaControl(pl, "audiomixer") snk = New MediaControl(pl, "alsasink") src.LinkTo(wap) wap.LinkTo(res) res.LinkTo(con) con.LinkTo(vol) vol.LinkTo(pan) pan.LinkTo(mix) ' La prima sorgente audio alla fine converge nel mixer audio: src2.LinkTo(wap2) wap2.LinkTo(res2) res2.LinkTo(con2) con2.LinkTo(vol2) vol2.LinkTo(pan2) pan2.LinkTo(mix) ' La seconda sorgente audio alla fine converge nel mixer audio: mix.LinkTo(snk) pl.Play() Do Wait 0.01 Loop End