+3 votes

I am trying to change the audio input device using AudioServer.capturesetdevice() but it always remains "default"

extends Node

func _ready() -> void:
    print(AudioServer.capture_get_device_list())
    switch_mic()


func switch_mic()->void:
    var mic_list : Array = AudioServer.capture_get_device_list()
    for i in mic_list:
        AudioServer.capture_set_device(i)
        print(AudioServer.capture_get_device())

this prints:

[Default, Line (Elgato Sound Capture), Line (VB-Audio Virtual Cable), Mic in at front panel (Pink) (2- Realtek High Definition Audio), Desktop Microphone (2- Microsoft® LifeCam HD-3000), Microphone (Steam Streaming Microphone)]
Default
Default
Default
Default
Default
Default

the list of my audio input devices, but then it never changes from default. Is this a bug or am I doing something wrong?

Godot version Godot_v3.2.3-stable_win64
in Engine by (17 points)

I have the same exact problem :/

I have this issue too. Maybe a bug with capturesetdevice() ?

I still have not found a solution to this issue. Is there a place to report bugs?

Yes on the Godot Github. Go to the Issues tab

Please log in or register to answer this question.

Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to webmaster@godotengine.org with your username.