Dolby.io Communications APIs SDK for Flutter

Overview

Flutter SDK

🚀 SDK Beta

The Flutter SDK is a part of the Beta Program.

Dolby.io Communications SDK for Flutter allows creating high-quality applications for video conferencing using the Flutter UI development SDK. With Flutter, you can write a single codebase in Dart that you can natively compile and use for building, testing, and deploying applications across multiple platforms. Currently, the Flutter SDK supports creating applications for iOS and Android devices. The SDK offers the same functionalities that are available in Android and iOS SDK. The only exception is that the file presentation functionality is currently supported only on Android devices.

Get started

You can access Flutter SDK releases on GitHub. To get started quickly, follow the Getting Started procedure. If you need help with Flutter development, see the Flutter documentation.

Comments
  • I cloned the example project. I can not listen to audio in android physical device. But working properly on emulator. And after using version 3.6.0, app crashes in release mode in main.dart file

    I cloned the example project. I can not listen to audio in android physical device. But working properly on emulator. And after using version 3.6.0, app crashes in release mode in main.dart file

    this is the error:

    java.lang.RuntimeException: Unable to get provider com.voxeet.sdk.manifests.VoxeetSdkProvider: sg.e: Subscriber class wa.z5$a and its super classes have no public methods with the @Subscribe annotation

    bug 
    opened by RafidKhan 9
  • [Android] Bluetooth and usb-c headphones are switching each other

    [Android] Bluetooth and usb-c headphones are switching each other

    Environment

    SDK Version: 3.7.0 - https://github.com/DolbyIO/comms-sdk-flutter/tree/release/3.7.0 Client Platform: Flutter test app.

    Description/Steps-to-reproduce: -Install the QA test app -Connect usb-c headphones to device -Connect to the conference -Connect bluetooth headphones to device -Unplug usb-c headphones -Plug usb-c headphones

    Expected result: Nothing happens/devices are working properly

    Actual result: Device management gets in some kind of loop - usb-c and bluetooth headphones are switching each other every second (sometimes it takes break for 20 seconds, then starts again)

    Devices: Poco X3 + Android 12 Huawei USB-C Headphones Samsung Galaxy Buds Pro

    TICKET COPIED FROM ANDROID SDK BUG (which was fixed one month ago), PROBABLY SAME ISSUE: https://jira.dolby.net/jira/browse/CCS-4099

    bug 
    opened by kszku-dolby 2
  • [Android] [iOS] Change speaker does not work when headphones are used

    [Android] [iOS] Change speaker does not work when headphones are used

    Environment: SDK Version: 3.6.1 Client Platform: Flutter test app. Samsung S22 + Android 12

    Description/Steps-to-reproduce: -Install the QA test app -Connect to the conference (There is no difference if you use Bluetooth or USB-C headphones or lightning headphones) -Use "Change speaker" option

    Expected result: "Change speaker" option works, audio is audible on speakerphone.

    Actual result: "Change speaker" option does not work, audio is audible only on headphones.

    Devices: Any Android and iOS device

    bug 
    opened by kszku-dolby 1
  • iOS test app crashes when trying to screenshare during Android user screenshare

    iOS test app crashes when trying to screenshare during Android user screenshare

    Environment SDK 3.6.1 https://github.com/DolbyIO/comms-sdk-flutter/releases/tag/3.6.1 Client Platform: Flutter test app.

    Description/Steps-to-reproduce: -Install the QA test app -Connect to the conference -Start screenshare on Android (screen share at this moment is not working, but that is not the case) -Try to start the screenshare on iOS, while Android did not stopped the screenshare, get an error -Stop screenshare on Android

    Expected result: Android stops screenshare and nothing happens

    Actual result: iOS test app crashes

    Devices: DV-WRO-iOS66 iPhone XS Max + iOS16 Poco X3 NFC + Android 12 DV-WRO-IOS108 iPhone 13 Pro Max + iOS 15 DV-WRO-SAM91 Samsung S22 Snapdragon + Android 12

    bug 
    opened by kszku-dolby 1
  • [Android] Screenshare from iOS is crashing a test app of Android tablet

    [Android] Screenshare from iOS is crashing a test app of Android tablet

    Environment Flutter version: 3.6.1 https://github.com/DolbyIO/comms-sdk-flutter/tree/release/3.6.1 Client Platform: Flutter test app.

    Description/Steps-to-reproduce: -Install the QA test app on Android tablet and iOS phone -Join to the conference with both devices -Start screen share on iOS

    Expected result: The Android user is still in the conference

    Actual result: Test app on Android user crashes. This scenario DOES NOT reproduce when Android device is a smartphone

    Devices: DV-WRO-IOS116 iPhone SE 2nd (2020) + iOS 15.5 DV-WRO-SAM96 Samsung Tab S8 + Android 12 DV-WRO-SAM98 Samsung Tab S8 Ultra + Android 12

    bug 
    opened by kszku-dolby 1
  • Screenshare is not working

    Screenshare is not working

    Environment SDK Version: https://github.com/DolbyIO/comms-sdk-flutter/releases/tag/3.6.1 Client Platform: Flutter test app.

    Description/Steps-to-reproduce: Install the QA test app Connect to the conference Start screenshare (iOS or Android)

    Expected result: Users can see your screenshare

    Actual result: Users cannot see your screenshare Devices: DV-WRO-iOS66 iPhone XS Max + iOS16 Poco X3 NFC + Android 12 DV-WRO-IOS108 iPhone 13 Pro Max + iOS 15 DV-WRO-SAM91 Samsung S22 Snapdragon + Android 12

    bug 
    opened by kszku-dolby 1
  • Prepare CI/CD pipelines for GitHub enterprise

    Prepare CI/CD pipelines for GitHub enterprise

    GitHub enterprise comes with a set of security features that will disable actions:

    • not created by GitHub
    • not created and hosted by us
    • not verified by GItHub
    • not whitelisted.

    This could serve as an example: https://github.com/dolbyio-samples/dolbyio-spatial-audio-demo-web/blob/main/.github/workflows/deploy-to-gh-pages.yml

    enhancement 
    opened by graduad 1
  • Join as listener

    Join as listener

    Overview

    The user should be able to join a conference as listener. An option to do so must be added on the join screen.

    Tasks

    • [x] #169
    • [x] #167
    • [x] #168
    enhancement 
    opened by graduad 1
  • Update to SDK 3.7

    Update to SDK 3.7

    Description

    With the SDK 3.7 release bundle we need to update the Flutter SDK to use the SDK 3.7.

    Tasks

    • [x] #182
    • [x] #183
    • [x] #184

    Each task

    Includes:

    • AudioService
      • LocalAudio
      • RemoteAudio
    • VideoService
      • LocalVideo
      • RemoteVideo
    enhancement 
    opened by jfan-dolby 1
  • If a session is closed and reopened, ConferenceService.getParticipants() can return corrupted data.

    If a session is closed and reopened, ConferenceService.getParticipants() can return corrupted data.

    If a session is closed and reopened, the list obtained from the getParticipants() method can sometimes get corrupted. This can result in no preview video being displayed for the local participant or the local participant appearing twice on the list.

    opened by graduad 1
  • Unable to convert and start file presentation

    Unable to convert and start file presentation

    Environment: SDK Version: 3.7.0 https://github.com/DolbyIO/comms-sdk-flutter/tree/release/3.7.0 Client Platform: Flutter test app.

    Description/Steps-to-reproduce:

    • Install the QA test app
    • Join a conference
    • Go to options
    • Try to convert and start file presentation

    Expected result: File presentation works

    Actual result: After choose file to convert nothing happens. Unable to start presenting file.

    Devices: Any iOS or Android device

    bug 
    opened by bciac 3
  • [Android] Unknown iOS user status from the conference

    [Android] Unknown iOS user status from the conference

    Environment

    SDK Version: 3.7.0 - https://github.com/DolbyIO/comms-sdk-flutter/tree/release/3.7.0 Client Platform: Flutter test app.

    Description/Steps-to-reproduce: -Install the QA test app

    • The other user from 1st iOS device creates the conference
    • Connect to this conference from 1st Android device
    • Connect to this conference from 2nd Android device
    • Connect to this conference from 2nd iOS device

    Expected result: All users are connected and their status is visible (connected/on_air) Actual result: On Android devices status of the ios users is not visible - UNKNOWN smoke2

    bug 
    opened by kszku-dolby 0
  • Set video forwarding does not work

    Set video forwarding does not work

    Environment: SDK Version: 3.7.0 https://github.com/DolbyIO/comms-sdk-flutter/tree/release/3.7.0 Client Platform: Flutter test app.

    Description/Steps-to-reproduce:

    • Install the QA test app
    • Join a conference
    • Go to options
    • Try to set video forwarding

    Expected result: "Set video forwarding" option works

    Actual result: "Set video forwarding" option does not work. Numbers of video cannot be selected

    Devices: Any iOS or Android device

    bug 
    opened by bciac 0
  • [iOS] Video starts from front camera instead of back

    [iOS] Video starts from front camera instead of back

    Environment: SDK Version: 3.7.0-beta.1 Client Platform: Flutter test app.

    Description/Steps-to-reproduce:

    Join a conference
    Start video
    Change front camera to back
    Stop video and start video
    

    Expected result:

    Video should start from back camera
    

    Actual result:

    Video starts from front camera instead of back
    

    Devices:

    Any iOS device
    

    The problem is related to the iOS SDK https://jira.dolby.net/jira/projects/CCS/issues/CCS-4191

    bug 
    opened by bciac 1
Releases(3.7.0-beta.2)
  • 3.7.0-beta.2(Dec 12, 2022)

  • 3.7.0-beta.1(Nov 17, 2022)

    Features

    • Introduced a low noise reduction level available via a new low noise reduction setting. The existing high setting causes aggressive removal of background sounds from the captured audio. The low setting removes only stationary sounds, such as the sound of a computer fan, air conditioning, or microphone hum, and allows sending more ambient audio into a conference. This mode gives participants full context of other participants' environments and creates a more realistic audio experience. Setting the preferred noise reduction level and audio capture mode is available via a new setCaptureMode method.
    • Introduced DNN-based Noise Reduction (DNR) that improves voice clarity by reducing echo and background noises, such as keyboard typing noises and breathing sounds. This feature is based on a deep neural network and offers improved noise reduction to make virtual meetings more productive and pleasant.
    • Introduced the AudioService, where the available APIs are divided into two models available via the AudioService: LocalAudio and RemoteAudio. The LocalAudio model offers APIs that allow the local participant to start and stop sending audio to a conference, set capture mode, and set comfort noise level. The RemoteAudio model allows the local participant to stop receiving audio from selected remote participants.
    • Introduced the VideoService, where the available APIs are divided into two models available via the VideoService: LocalVideo and RemoteVideo. The LocalVideo model offers APIs that allow the local participant to start and stop sending video to a conference. The RemoteVideo model allows the local participant to stop receiving video streams from selected remote participants.
    • Increased the maximum number of video streams that may be transmitted to the local participant to 25.

    Deprecated APIs

    Changes introduced in AudioService and VideoService impact the existing APIs that are no longer supported in SDK 3.7:

    Source code(tar.gz)
    Source code(zip)
  • 3.6.1(Nov 4, 2022)

    Features

    • Introduced SpatialAudioStyle that defines how the spatial location is communicated between SDK and the Dolby.io server.
    • Introduced obfuscation rules to simplify an obfuscation of Android applications.

    Changes

    Bug Fixes

    Source code(tar.gz)
    Source code(zip)
  • 3.6.0(Oct 19, 2022)

    Features

    The Flutter SDK allows creating high-quality applications for video conferencing. With Flutter, you can write a single codebase in Dart that you can natively compile and use for building, testing, and deploying applications across multiple platforms. Currently, the Flutter SDK supports creating applications for iOS and Android devices. The SDK offers the same functionalities that are available in Android and iOS SDK. For more information, see the Flutter SDK Overview and Getting Started.

    Source code(tar.gz)
    Source code(zip)
  • 3.6.0-beta.5(Oct 14, 2022)

    Bug Fixes

    Fixed an issue that occurred on Android devices where participants who left a conference, closed a session, and rejoined the conference could not see themselves on the participants list.

    Source code(tar.gz)
    Source code(zip)
  • 3.6.0-beta.4(Oct 12, 2022)

    Bug Fixes

    • Fixed an issue where the start and stop methods of the VideoPresentationService did not work properly.
    • Fixed a crash that occurred when accessing the current recording.
    • Fixed an issue with converting files on iOS devices.
    • Fixed an issue with receiving events from the FilePresentationService and VideoPresentationService on iOS devices.
    • Added an option to switch speakers on Android devices.
    • Improved error reporting on iOS.
    • Unified error messages on iOS and Android devices
    Source code(tar.gz)
    Source code(zip)
  • 3.6.0-beta.3(Sep 27, 2022)

  • 3.6.0-beta.2(Sep 7, 2022)

  • 3.6.0-beta.1(Aug 30, 2022)

    Features

    The Flutter SDK allows creating high-quality applications for video conferencing using the Flutter UI development SDK. With Flutter, you can write a single codebase in Dart that you can natively compile and use for building, testing, and deploying applications across multiple platforms. Currently, the Flutter SDK supports creating applications for iOS and Android devices. The SDK offers the same functionalities that are available in Android and iOS SDK. The only exception is that the file presentation functionality is currently supported only on Android devices. For more information, see the Flutter SDK Overview and Getting Started.

    Source code(tar.gz)
    Source code(zip)
A mobile client for the public apis repository, 1400+ free apis to use able to be navigated through your phone :)

Public APIs mobile app Your assistant app that will help you discover and pick the next API for your next development project What it contains, you sa

Gwhyyy 4 Dec 25, 2022
Woocommerce SDK for Flutter. The Complete Woo Commerce SDK for Flutter.

woocommerce Woocommerce SDK for Flutter. Getting Started Add the package to your pubspec.yaml and import. import 'package:woocommerce/woocommerce.dart

RAY 105 Dec 6, 2022
A showcase of the most common Flutter animation APIs.

Flutter Animations Gallery This project is a showcase of the most common Flutter animation APIs. Preview Also available as a Flutter web demo. Setting

Andrea Bizzotto 136 Dec 10, 2022
A Flutter plugin that provides assets abstraction management APIs without UI integration, you can get assets (image/video/audio) on Android, iOS and macOS.

photo_manager Photo/Assets management APIs for Flutter without UI integration, you can get assets (image/video/audio) from Android, iOS and macOS. 提供相

FlutterCandies 526 Jan 4, 2023
The app that i built during the IITM Session on "Working with APIs in Flutter"

api_test A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this

Aswin Gopinathan 1 Dec 18, 2021
flutter_thrio makes it easy and fast to add flutter to existing mobile applications, and provide a simple and consistent navigator APIs.

中文文档 英文文档 问题集 原仓库不再维护,代码已经很老了 最近版本更新会很快,主要是增加新特性,涉及到混合栈的稳定性的问题应该不多,可放心升级,发现问题加 QQ 群号码:1014085473,我会尽快解决。 不打算好好看看源码的使用者可以放弃这个库了,因为很多设定是比较死的,而我本人不打算花时间写

null 290 Dec 29, 2022
Maps for Flutter developers. Supports Apple, Bing, and Google APIs.

Overview Cross-platform geographic maps for Flutter applications. Pull requests are welcome! The packages are licensed under the Apache License 2.0. P

Dint 17 Oct 13, 2022
Flutterbodydetection - A flutter plugin that uses MLKit on iOS/Android platforms to enable body pose and mask detection using Pose Detection and Selfie Segmentation APIs for both static images and live camera stream.

body_detection A flutter plugin that uses MLKit on iOS/Android platforms to enable body pose and mask detection using Pose Detection and Selfie Segmen

null 18 Dec 5, 2022
flutter_thrio makes it easy and fast to add flutter to existing mobile applications, and provide a simple and consistent navigator APIs.

本仓库不再维护,可移步新仓库 https://github.com/flutter-thrio/flutter_thrio 中文文档 问题集 QQ 群号码:1014085473 The Navigator for iOS, Android, Flutter. Version 0.2.2 requir

Hellobike 732 Dec 5, 2022
A Flutter plugin to access TensorFlow Lite apis.

tensorflow_lite A Flutter plugin to access TensorFlow Lite apis. TensorFlow Lite is TensorFlow’s lightweight solution for mobile and embedded devices.

Kashif Minhaj 74 Nov 22, 2022
A library for building REST APIs easily with Dart

A library for building REST APIs easily with Dart modeled after Express JS for Node Js. The library is still a work in progress and open to contributi

Albert Oboh 43 Oct 4, 2022
Public interface definitions of Google APIs for Dart and gRPC

Public interface definitions of Google APIs for Dart and gRPC. Getting started I

Mahdi K. Fard 1 Feb 23, 2022
Chat-app-server - Backend layer that exposes some APIs

A server app built using Shelf, configured to enable running with Docker. This sample code handles HTTP GET requests to / and /echo/<message> Running

Andrea Bozzelli 0 Jan 7, 2022
Backbone - A Dart framework for writing REST APIs from an Open API spec

The Backbone Dart Backend Framework A Dart framework for writing REST APIs from

Marcus Twichel 39 Oct 6, 2022
Get google api credentials - A Dart CLI app to obtain credentials for accessing Google APIs

get_google_api_credentials A Dart CLI app to obtain credentials for accessing Go

null 1 Jan 28, 2022
Ml kit ocr - Plugin which provides native ML Kit OCR APIs

MLKit OCR Plugin which provides native ML Kit OCR APIs Requirements Android Set

Madhav tripathi 0 Aug 3, 2022
The Swift code generator for your assets, storyboards, Localizable.strings, … — Get rid of all String-based APIs!

SwiftGen SwiftGen is a tool to automatically generate Swift code for resources of your projects (like images, localised strings, etc), to make them ty

null 8.3k Dec 31, 2022
Scouter is a package which was made following the goal to provide a NestJS-like experience to Dart Developers that want to develop Rest APIS

Scouter is a package which was made following the goal to provide a NestJS-like experience to Dart Developers that want to develop Rest APIS Features

Vinicius Amélio 3 Sep 12, 2022
Build an End-to-End Typesafe APIs (Experimental)

mid ⚠️ warning: the project is still experimental! so things may change often until a stable version is released. mid is a tool to build an end-to-end

osama 15 Oct 19, 2022