#Not getting all media devices in tauri (macOS)

9 messages · Page 1 of 1 (latest)

cinder plume
#
    navigator.mediaDevices.getUserMedia({ audio: true, video: false })
        .then(stream => {
            navigator.mediaDevices.enumerateDevices()
                .then(devices => {
                    console.log(devices);
                })
                .catch(err => {
                    console.log(err);
                });
        })
        .catch(err => {
            console.log(err);
        });```

If i run this code in Safari i get all media devices (as shown in pic 1)
whereas running it in tauri doesnt show some of the media devices (pic 2)

and yes i have a Info.plist file as well

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSMicrophoneUsageDescription</key>
<string>Microphone access is required to listen to desktop audio</string>
</dict>
</plist>```

Not quite sure whats causing this discrepancy

#

For context im trying to record desktop audio using an external driver like background music or blackhole

#

I see an issue comment surrounding this? wondering if anyone has figured out a way around this

#

maybe some macos perms im not sure

nocturne mulch
#

my theory was that macos simply doesn't allow wkwebview the same access to devices that it gives to Safari

#

but i have no proof for that so idk

cinder plume
#

what would be the best way to continuously send audio data from the backend to the frontend

#

in that case