Differenze tra le versioni di "Rilevare se la scheda audio sta processando dati audio"
Da Gambas-it.org - Wikipedia.
Riga 6: | Riga 6: | ||
Dim j As Byte | Dim j As Byte | ||
Dim s As String | Dim s As String | ||
− | |||
<FONT color=gray>' ''Verifica innanzitutto quante schede audio sono rilevate dal sistema:''</font> | <FONT color=gray>' ''Verifica innanzitutto quante schede audio sono rilevate dal sistema:''</font> | ||
− | + | i = Dir("/proc/asound", "card*", gb.Directory).Count | |
− | + | Print "Il sistema ha rilevato num. " & i & " Schede audio:" | |
− | |||
<FONT color=gray>' ''Quindi verifica quali dispositivi di quali schede audio stanno eventualmente processando segnali audio:''</font> | <FONT color=gray>' ''Quindi verifica quali dispositivi di quali schede audio stanno eventualmente processando segnali audio:''</font> | ||
− | + | ss = Split(File.Load("/proc/asound/cards"), Chr(10)) | |
− | + | ||
− | + | For j = 0 To (ss.Count / 2) Step 2 | |
− | + | Print "\n\n"; ss[j] | |
− | + | If j > 0 Then Dec j | |
− | + | For Each s In Dir("/proc/asound/card" & j, "pcm*p", gb.Directory) | |
− | + | Print "Device: /card"; j; "/"; s | |
− | + | If InStr(File.Load("/proc/asound/card" & CStr(j) &/ s &/ "sub0/status"), "RUNNING") > 0 Then | |
− | + | Print "\e[32mQuesto dispositivo della scheda audio sta processando segnali audio !\e[0m" | |
− | + | Else | |
− | + | Print "\e[31mQuesto dispositivo della scheda audio non sta processando alcun segnale audio.\e[0m" | |
− | + | Endif | |
− | |||
− | |||
− | |||
Next | Next | ||
− | + | Next | |
+ | |||
'''End''' | '''End''' |
Versione delle 17:04, 8 ago 2020
Per rilevare se una o più schede audio, e quali loro dispositivi, stanno eventualmente processando dati audio, è possibile utilizzare questo codice:
Public Sub Main() Dim i As Integer Dim ss As New String[] Dim j As Byte Dim s As String ' Verifica innanzitutto quante schede audio sono rilevate dal sistema: i = Dir("/proc/asound", "card*", gb.Directory).Count Print "Il sistema ha rilevato num. " & i & " Schede audio:" ' Quindi verifica quali dispositivi di quali schede audio stanno eventualmente processando segnali audio: ss = Split(File.Load("/proc/asound/cards"), Chr(10)) For j = 0 To (ss.Count / 2) Step 2 Print "\n\n"; ss[j] If j > 0 Then Dec j For Each s In Dir("/proc/asound/card" & j, "pcm*p", gb.Directory) Print "Device: /card"; j; "/"; s If InStr(File.Load("/proc/asound/card" & CStr(j) &/ s &/ "sub0/status"), "RUNNING") > 0 Then Print "\e[32mQuesto dispositivo della scheda audio sta processando segnali audio !\e[0m" Else Print "\e[31mQuesto dispositivo della scheda audio non sta processando alcun segnale audio.\e[0m" Endif Next Next End