aws / amazon-chime-sdk-ios

An iOS client library for integrating multi-party communications powered by the Amazon Chime service.
https://aws.amazon.com/chime/chime-sdk/
Apache License 2.0
139 stars 64 forks source link

Enable configuring audio device capabilities before starting a meeting #656

Closed dinmin-amzn closed 4 months ago

dinmin-amzn commented 4 months ago

ℹ️ Description

  1. Added AudioDeviceCapabilities to enable configuring audio device capabilities before starting a meeting. The supported capabilities are:
    1. Input and Output (both microphone and speaker enabled)
    2. Output only (microphone disabled and speaker enabled, this is a new feature)
    3. None (both microphone and speaker disabled, this replaces AudioMode.noDevice)
  2. Removed AudioMode.noDevice since it has been replaced by AudioDeviceCapabilities.none
  3. [Demo] Added option to select audio device capabilities on join screen

Issue #, if available

Type of change

🧪 How Has This Been Tested?

A demo build of these changes has successfully gone through QA testing. Also manually tested the following scenarios:

  1. Joined meeting with AudioDeviceCapabilities.inputAndOutput and verified that:
    1. Audio recording permissions were required
    2. Was able to send audio to remote attendee
    3. Was able to receive audio from remote attendee
  2. Joined meeting with AudioDeviceCapabilities.outputOnly and verified that:
    1. Audio recording permissions were not required
    2. Was not able to send audio to remote attendee
    3. Was able to receive audio from remote attendee
  3. Joined meeting with AudioDeviceCapabilities.none and verified that:
    1. Audio recording permissions were not required
    2. Was not able to send audio to remote attendee
    3. Was not able to receive audio from remote attendee

Additional Manual Test

📱 Screenshots, if available

capabilities-ios

✅ Checklist

Integration validation (required before release)

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

dinmin-amzn commented 4 months ago

Same as Android, do we have a backlog item tracking the migration guide?

We don't, but I added a short migration note in the CHANGELOG