Naudio ik neem audio op via speaker, maar blijft mic opnemen

Pagina: 1
Acties:

Vraag


  • Richard1234
  • Registratie: September 2026
  • Laatst online: 21-09 01:23
Naudio ik neem audio op via speaker, maar blijft mic opnemen.
Ik heb hem debug, maar geef geen fout aan.
Weet iemand het probleem.
Bijvoorbaat dank.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Imports NAudio
Imports NAudio.CoreAudioApi
Imports NAudio.Wave


Public Class Form1
    Private Sub Opnemen_Click(sender As Object, e As EventArgs) Handles Opnemen.Click
        Opnemen.Enabled = False
        Dim enumerator As New MMDeviceEnumerator()
        Dim captureDevices = enumerator.EnumerateAudioEndPoints(DataFlow.Capture, DeviceState.Active)

        Dim selectedDevice As MMDevice = Nothing
        Dim recorder = New WasapiRecorderBuilder() _
            .WithDevice(selectedDevice) _
            .Build()


        For Each device As MMDevice In captureDevices
            If device.FriendlyName.IndexOf(ComboBox1.SelectedItem, StringComparison.OrdinalIgnoreCase) >= 0 Then
                selectedDevice = device
            End If
            Exit For
        Next

        Dim path = "e:\Ondertitel.wav"


        Dim writer = New WaveFileWriter(path, recorder.WaveFormat)
        AddHandler recorder.DataAvailable,
          Sub(buffer, flags, devicePosition, qpcPosition)
              writer.Write(buffer)
          End Sub
        recorder.StartRecording()
    End Sub

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        ' Create the enumerator to discover audio endpoints
        Dim enumerator As New MMDeviceEnumerator()

        ' Enumerate only the active audio rendering (playback) devices
        Dim devices = enumerator.EnumerateAudioEndPoints(DataFlow.Render, DeviceState.Active)


        For Each device As MMDevice In devices
            ComboBox1.Items.Add($"Name: {device.FriendlyName}")
        Next
    End Sub


End Class

Alle reacties


  • Patriot
  • Registratie: December 2004
  • Laatst online: 23-09 15:50

Patriot

Fulltime #whatpulsert

Volgens mij roep je nu WasapiRecorderBuilder.withDevice() effectief aan met Nothing als argument. Ik kan me voorstellen dat 'ie dan niks doet. De loop waarin je het juiste device selecteert zou volgens mij tussen regel 12 en 13 in moeten staan. Die hele for-loop in Opnemen_Click is ook een beetje gek, ik zou verwachten dat die Exit For ook ín die if-statement die erin zit zou moeten staan, immers stop je de loop anders altijd na de eerste iteratie.

[ Voor 4% gewijzigd door Patriot op 20-09-2026 13:51 ]


  • MSteverink
  • Registratie: Juni 2004
  • Laatst online: 22-09 15:52
Geluid neem je op via een microfoon of een line-ingang. Een speaker is bedoeld voor weergave.