Agora-Flutter-SDK icon indicating copy to clipboard operation
Agora-Flutter-SDK copied to clipboard

Various Video Call web bugs

Open mikemilla opened this issue 3 years ago • 8 comments

Describe the bug

  1. Safari, iOS 15.4.1 (iPhone 13 Pro) — Local and Remote videos do not render (Video does broadcast and can be seen by other participants)
  2. Chrome 101.0.4952.61, Android 12 (Pixel 3A) — Same issue as 1
  3. Safari 14.0.2, MacOS 11.1 (Macbook Pro 2014) — Video freezes after a few seconds (Could be related to old browser version)

To Reproduce Join a video call via the mobile browser with the targets above

Expected behavior Video rendering smoothly on the local device(s)

Screenshots Chrome Mac Screenshot - Works properly with no issues Screen Shot 2022-05-25 at 12 00 19 AM

Safari iOS Screenshot - No rendered previews Screen Shot 2022-05-25 at 12 00 19 AM

Additional context Current sdk being used is agora_rtc_engine: ^5.2.0

mikemilla avatar May 25 '22 04:05 mikemilla

Hello @mikemilla, is there any logs?

littleGnAl avatar May 26 '22 15:05 littleGnAl

same here.

ataknakbulut avatar Jul 04 '22 16:07 ataknakbulut

I'm having the same issue as well. No mobile devices see to be able to show video on Flutter web. The same code running in Chrome and Safari on desktop work fine. Mobile devices are transmitting video to desktop, just the mobile devices do not show any local or remote video.

blopker avatar Jul 12 '22 06:07 blopker

With a little digging, it looks like mobile web is trying to use the native plugin for video:

errors.dart:251 Uncaught (in promise) Error: MissingPluginException(No implementation found for method offset on channel flutter/platform_views)
    at Object.throw_ [as throw] (errors.dart:251:49)
    at MethodChannel._invokeMethod (platform_channel.dart:165:7)
    at _invokeMethod.next (<anonymous>)
    at async_patch.dart:45:50
    at _RootZone.runUnary (zone.dart:1685:54)
    at _FutureListener.thenAwait.handleValue (future_impl.dart:147:18)
    at handleValueCallback (future_impl.dart:766:44)
    at _Future._propagateToListeners (future_impl.dart:795:13)
    at [_completeWithValue] (future_impl.dart:566:5)
    at async._AsyncCallbackEntry.new.callback (future_impl.dart:639:7)
    at Object._microtaskLoop (schedule_microtask.dart:40:11)
    at _startMicrotaskLoop (schedule_microtask.dart:49:5)
    at async_patch.dart:166:15

The same thing happens on both the html and canvaskit renderer.

blopker avatar Jul 12 '22 23:07 blopker

I can replicate this with the example app in this repo:

  1. In the example app folder, run flutter run -d chrome
  2. Note the port in which the app launches
  3. Run export PORT=60878 && adb reverse tcp:$PORT tcp:$PORT with the noted port for PORT
  4. Follow the instructions here: https://developer.chrome.com/docs/devtools/remote-debugging/ to debug Chrome on android
  5. On the Android device, go to localhost:$PORT. This should load the app and allow the computer to get log data.

blopker avatar Jul 12 '22 23:07 blopker

Any dev thoughts on this? Mobile web seems so close to working.

blopker avatar Jul 30 '22 17:07 blopker

also for me working on chrome on mac, not working on chrome and firefox on android

hmbenhaim avatar Aug 08 '22 12:08 hmbenhaim

Here is an update on what I've tried (cc: @blopker)

  • My hunch is that the AgoraRtcWrapper.bundle.js may not be configured correctly. Old examples of the flutter web library include a script tag in the index.html file. I cloned the repo, built the new file, installed it manually, and experienced the same issue. I also tried to find an older bundle js, and found the same problem. I created an issue in Iris repo (https://github.com/AgoraIO-Community/Iris-Rtc-Web/issues/1)

  • I opened another issue as a means to bump this problem up. Can be closed if we finally get some details. (https://github.com/AgoraIO/Agora-Flutter-SDK/issues/735)

  • I downloaded a web sdk example and tried it in safari mac and it worked well. Maybe the pipeline from the web SDK to the wrapper SDK isn't up to date?

  • I currently have a ticket open with support about this issue. Will update here when I get a response. I would imagine Agora would like this to work as I am very confident Agora is the most popular p2p video library for Flutter in the world.

Debugging this is really difficult (especially for mobile). My guess is that if Safari mac is solved, the other mobile platforms will get solved too. I use this command to run flutter as a web server to test on mobile (for those that haven't tried that)

flutter run main.dart -d web-server --web-port 8080 --web-hostname 0.0.0.0

mikemilla avatar Aug 09 '22 03:08 mikemilla

Any update on this?

faustodc avatar Feb 13 '23 09:02 faustodc

any update?

mminhlequang avatar Apr 22 '23 12:04 mminhlequang

any update?

NamHofstadter avatar Sep 14 '23 10:09 NamHofstadter

The web support for agora_rtc_engine 6.x has landed in the main branch, If you still face issues, please try the latest code in main branch to see if it works or not.

littleGnAl avatar Nov 14 '23 08:11 littleGnAl

There is no documentation on how to use it @littleGnAl

The web support for agora_rtc_engine 6.x has landed in the main branch, If you still face issues, please try the latest code in main branch to see if it works or not.

oexza avatar Nov 15 '23 09:11 oexza

@oexza Add the main branch as git package:

agora_rtc_engine:
  git:
    url: https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK.git
    ref: main

Then follow the integration guide https://github.com/AgoraIO-Extensions/Agora-Flutter-SDK?tab=readme-ov-file#web-alpha

littleGnAl avatar Nov 15 '23 10:11 littleGnAl

Without additional information, we are unfortunately not sure how to resolve this issue. We are therefore reluctantly going to close this bug for now. If you find this problem please file a new issue with the same description, what happens, logs and the output. All system setups can be slightly different so it's always better to open new issues and reference the related ones. Thanks for your contribution.

github-actions[bot] avatar Nov 28 '23 11:11 github-actions[bot]

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please raise a new issue.

github-actions[bot] avatar Dec 05 '23 12:12 github-actions[bot]