
Native Video Reference App 1.3 Release: New Developer Features
Time to read: 5 minutes
Introduction
The Vonage Video Reference App (VERA) demonstrates production-ready implementations built with the Vonage Video API. Version 1.3 is now available for both iOS and Android. This release introduces bottom bar extensibility APIs on both platforms, background replacement for iOS, batch background upload on Android, and a range of call controls and developer improvements across both platforms.
This post highlights what's new and where developers can begin using these features.
Why It Matters
If you're building with the Vonage Video API, VERA shows how production-ready video features can be implemented in a real application. Each release adds real-world patterns you can adopt or adapt in your own apps.
Version 1.3 focuses on three improvements developers have been asking for: easier customization, better moderation tools, and more control over call quality:
Customization: inject your own controls into the meeting room UI without forking the layout code.
Call controls: per-participant statistics, audio bitrate selection, and persistent settings give users more visibility and control during calls.
Moderation and safety: recording confirmations, force mute, and speaking-while-muted detection address common participant management needs.
What’s New on Both Platforms
Bottom Bar Customization
You can now add your own controls directly to the meeting room without modifying the SDK's built-in layout.
On Android, the new MeetingRoomBuilder API accepts custom buttons via additionalBottomBarActions, or lets you replace the entire bar with your own composable using bottomBar. Custom buttons participate in the same responsive overflow logic as the built-in controls, so they behave consistently across screen sizes.
On iOS, the MeetingRoomSDK exposes a similar API for injecting buttons directly into the bar without modifying the SDK itself.
Persistent Settings
Call settings are automatically saved and restored across sessions on both platforms. On Android, configuration values like bitrate, codec order, and frame rate are persisted to DataStore and restored across sessions. On iOS, settings changes are applied as the user interacts with each control, with no “Save” button required.
What’s New on iOS
Background Replacement
Background blur and replacement are available during calls using preset or custom images. The feature is accessible from a new Background Settings panel in the bottom bar.
Per-Participant Audio and Video Statistics
Developers can now inspect audio and video statistics for every participant without leaving the meeting, leading to a more efficient troubleshooting experience.
Stats are collapsed by default and expand on interaction, reducing visual clutter during normal calls.
In-Call Feedback Reporting
A feedback button in the bottom bar lets users submit issue reports without leaving the call. The form includes title, name, and description fields, with validation and clear success and error states.
Force Mute and Speaking-While-Muted Detection
Moderators can force mute individual participants during a call. The app also detects when a user speaks while muted and surfaces a toast notification to prompt them.
Audio Bitrate Selector
iOS now matches the web and Android apps by allowing users to choose between automatic and custom audio bitrate.
Deep Link Support
Support for sessionKey deep links allows users to join a specific call directly from a link.
What’s New on Android
Toggle Top and Bottom Bars on Tap
Tapping the video area in a meeting room now toggles the visibility of the top and bottom bars with a 300 ms slide animation.
Recording Confirmation and Participant Notification
A confirmation dialog appears before recording starts. Other participants see an overlay notification informing them that the session is being recorded.
Batch Background Image Upload
Multiple background images can be selected at once when adding virtual backgrounds. The picker limits selection to the number of remaining available slots.
Publisher Settings Locked During Active Calls
Settings that require recreating the publisher, such as resolution and frame rate, are locked while a call is in progress. A “takes effect on next call” hint is displayed, so the reason for the lock is clear.
Foreground Service Opt-Out
The SDK foreground service can now be disabled programmatically, removing the foreground service declaration from the app manifest when it is not needed.
Pluggable Permission Handling
The vonage-meeting-room SDK now accepts a custom permission UI provider, letting you wire your own permission screen instead of using the SDK default.
Captions Improvements
The captions overlay keeps text visible for 2 seconds after the final segment arrives, preventing text from disappearing too abruptly. The overlay also shows “You” in place of the local participant’s raw subscriber name on the self-caption line.
Normalized Video Grid
AdaptiveGrid and ActiveSpeakerLayout have been extracted into the vonage-video-ui-compose module, normalizing the video grid layout and making both components available independently.
SDK Update
The Android SDK has been updated from 2.34.0 to 2.34.1.
Bug Fixes
Android
Fixed an issue where the local video tile disappeared when 6 to 7 participants joined, caused by the publisher falling outside the 5-tile visible region of
AdaptiveGrid.
Fixed publisher video permanently freezing when switching between grid and active-speaker layouts.
Fixed the camera not being released immediately when ending a call.
iOS
Fixed an issue where the camera preview in the waiting room did not apply the resolution selected in Settings.
Getting Started
To access the code in this release, you can clone the Android and iOS repositories from GitHub.
To learn more about the APIs used in these apps, explore the Vonage Video API documentation.
Conclusion
Version 1.3 of the Vonage Video Reference App makes it easier to customize meeting experiences while adding moderation features and additional control over call quality. Whether you're building production applications or exploring implementation patterns, these improvements provide practical examples that can be incorporated into your own projects.
Have a question or want to share what you're building?
Subscribe to the Developer Newsletter
Follow us on X (formerly Twitter) for updates
Watch tutorials on our YouTube channel
Connect with us on the Vonage Developer page on LinkedIn
Stay connected and keep up with the latest developer news, tips, and events.