Open dannnnthemannnn opened 8 months ago
I would also be open here to hearing how to implement this myself as a pull request. I see that the code already is calling into iris so I'm guessing some work needs to be done on the iris side?
Very much appreciate you are willing to contribute, the underlying implementation is inside the iris_web, (more detail here). But it's so sorry that it's still an early stage and lacks of contribution guide at this time, and you may need to take some time to understand how it works.
For a quick start, I think you can check the IVideoDeviceManagerImpl
for reference
https://github.com/AgoraIO-Extensions/iris_web/blob/dc46c16fbbe2871a19cdc56453f12f5ff9f03093/packages/rtc/src/impl/IAgoraRtcEngineImpl.ts#L1146
Thanks for the links! Trying to get the iris_web building and am getting the following error:
iris_web % pnpm install
Scope: all 5 workspace projects
Lockfile is up to date, resolution step is skipped
Packages: +1117
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ERR_PNPM_FETCH_403 GET https://npm.pkg.github.com/download/@agoraio-extensions/agora-rtc-sdk-ng-fake/1.0.12/99350f1d3d2b0ed7d3bd4dd58e39cad252b07ee0: Forbidden - 403
An authorization header was used: Bearer ghp_[hidden]
These authorization settings were found:
//npm.pkg.github.com/:_authToken=ghp_[hidden]
//registry.npmjs.org/:_authToken=npm_[hidden]
@agoraio-extensions:registry=https://npm.pkg.github.com
Progress: resolved 1117, reused 169, downloaded 0, added 1
Downloading registry.npmjs.org/typescript/5.1.6: 1.37 kB/7.15 M
It is most likely you should set up the GitHub packages auth first. https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-npm-registry
Version of the agora_rtc_engine
6.3.0
Platforms affected
Steps to reproduce
Expected results
You can change audio devices using the audio device manager
Actual results
It throws an unimplemented exception. I know this may mean it just hasnt been implemented yet, but wondering if that means there is no way in web to change audio devices? Any workarounds that might be available?
Code sample
Code sample
```dart await engine.getAudioDeviceManager().setRecordingDevice("123"); ```Screenshots or Video
No response
Logs
[2:20:29 PM:937][Iris log]:[callIrisApiAsync][start] {"event":"AudioDeviceManager_setRecordingDevice_4ad5f6e","data":"{\"deviceId\":\"123\"}","data_size":18,"result":"","length":[],"buffer_count":0} [2:20:29 PM:937][Iris warning]:AudioDeviceManager_setRecordingDevice_4ad5f6e not supported in this platform! [2:20:29 PM:937][Iris log]:[callIrisApiAsync][result] AudioDeviceManager_setRecordingDevice_4ad5f6e ret -4
Flutter Doctor output
Doctor output
```console [✓] Flutter (Channel stable, 3.19.3, on macOS 14.1.1 23B81 darwin-arm64, locale en-US) [!] Android toolchain - develop for Android devices (Android SDK version 31.0.0) ✗ cmdline-tools component is missing Run `path/to/sdkmanager --install "cmdline-tools;latest"` See https://developer.android.com/studio/command-line for more details. ✗ Android license status unknown. Run `flutter doctor --android-licenses` to accept the SDK licenses. See https://flutter.dev/docs/get-started/install/macos#android-setup for more details. [✗] Xcode - develop for iOS and macOS ✗ Xcode installation is incomplete; a full installation is necessary for iOS and macOS development. Download at: https://developer.apple.com/xcode/ Or install Xcode via the App Store. Once installed, run: sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer sudo xcodebuild -runFirstLaunch ✗ CocoaPods not installed. CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side. Without CocoaPods, plugins will not work on iOS or macOS. For more info, see https://flutter.dev/platform-plugins To install see https://guides.cocoapods.org/using/getting-started.html#installation for instructions. [✓] Chrome - develop for the web [✓] Android Studio (version 2023.2) [✓] VS Code (version 1.84.2) [✓] VS Code (version 1.85.0-insider) [✓] Connected device (2 available) [✓] Network resources ! Doctor found issues in 2 categories. ```