Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,22 @@ Release notes follow the [keep a changelog](https://keepachangelog.com/en/1.0.0/
### Added

- Added `AirConsole.requestPhotonEngineAuth()` and `onPhotonEngineAuth(ticket)` so screens can authenticate with Photon Custom Authentication.
- `AirConsole.getUserMedia` asks the platform which audio input a stream should use before handing it to the game
(`requestPreferredAudioInputDevice` / `preferredAudioInputDevice`), so car head units can keep games on the phone's
built-in microphone. The first request opens a stream, then keeps it, opens a fresh one if it ended, or switches to
the preferred device; later requests ask first, then open once with the device merged in as a non-exact `deviceId`.
- The API reports the audio inputs and the active device each time `getUserMedia` resolves
(`audioInputDevicesReported`), and failures the platform would not otherwise learn of, a timeout or an open error
(`userMediaRequestFailed`).
- The preferred audio input device exchange runs only when the platform announces it in `ready`
(`audioInputExchangeEnabled: true`); otherwise `getUserMedia` behaves as before.

### Changed

- With the exchange, the `getUserMedia` timeout is 60 s of unpaused time: it stops while the screen is paused.
Without it, the timeout stays 45 s.
- With the exchange, `destroy()` ends a pending `getUserMedia` request like a timeout: it stops any stream the request
holds and reports `userMediaRequestFailed` before rejecting.

## [1.11.0] - 2026-07-07

Expand Down
Loading