Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [VB.NET] Valutare l'intensità di volume

    Ciao a tutti.
    Vorrei fare un programma che riceve in input un suono da microfono, ne valuti il volume e la durata, se supera una certa soglia per un certo tempo (valori impostabili da configurazione) riproduca un file audio,
    Il problema che non so come risolvere è valutare il volume del suono che ricevo in ingresso.
    In rete ho trovato System.Speech.Recognition che potrebbe (a livello concettuale) fare al caso mio, ma ho trovato utilizzi al solo riconoscimento vocale e nessun riferimento al volume. A me non interessa una scala standard di valori (tipo dB), mi basta solo una scala che all'interno della macchina possa classificare il volume.

    Grazie anticipatamente

    Ciao

  2. #2
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    con cosa acquisisci il suono dal microfono?

  3. #3
    Utente di HTML.it L'avatar di Mychy
    Registrato dal
    Oct 2000
    Messaggi
    794
    In passato ho dovuto affrontare un problema del genere, in VB.NET ho trovato molte difficoltà, avevo trovato qualcosa in C# usando le directx (su code project se non ricordo male), poi il progetto non è andato avanti... così non ti so dare una soluzione vera e propria

  4. #4
    Beh, se utilizzo System.Speech.Recognition.SpeechRecognitionEngine utilizzerei SetInputToDefaultAudioDevice
    codice:
    Public Class Form1
    
    ' Variabile globale
    Private engine As New SpeechRecognitionEngine
    
    Private Sub Form1_Load(ByVal sender As Object,ByVal e As EventArgs) Handles MyBase.Load
        ' Impostazione del microfono di default di sistema
        Dim T As New Threading.Thread(AddressOf Engine.SetInputToDefaultAudioDevice)
        T.Start()
        T.Join()
    ...
    Se non posso utilizzare questa classe non saprei come fare!

  5. #5
    Utente di HTML.it L'avatar di Stoicenko
    Registrato dal
    Feb 2004
    Messaggi
    2,254
    se hai un po' di dimestichezza col vb.net e con la programmazione in generale datti un'occhiata a DirectShow (sull'msdn)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.