Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Player fails to load in Android #99

Closed
arthurgeron-work opened this issue Oct 13, 2022 · 9 comments · Fixed by #149
Closed

Player fails to load in Android #99

arthurgeron-work opened this issue Oct 13, 2022 · 9 comments · Fixed by #149
Labels
bug Something isn't working

Comments

@arthurgeron-work
Copy link

arthurgeron-work commented Oct 13, 2022

Describe the bug
Video does not play on android, the player stays in a loading loop, each load it crashes and then starts again.

To reproduce
Using version 1.2.0, try loading the following URL in a react-native application: https://mobile.tradersclub.com.br/tcmediaapi/v1/file/hls/685d3dae-2f68-4f2f-be44-82a20f687716.m3u8
I'm not using expo

Expected behavior
Should play the stream correctly or to call onError method

Screenshots
If applicable, add screenshots to help explain your problem.

Device (please complete the following information):

  • Simulator or Real Device: Real Device
  • Device: Samsung a11
  • OS: One UI Core 3.1, Android 11

Debug logs

On App Launch the following is logged:
Could not find generated setter for class com.amazonaws.ivs.reactnative.player.AmazonIvsViewManager
Could not find generated setter for class com.perrystreet.AwsIvsPlayerViewManager
image

When video tries to play it logs:
Captura de Tela 2022-10-13 às 13 25 22

Additional context
Add any other context about the problem here.

@arthurgeron-work arthurgeron-work added the bug Something isn't working label Oct 13, 2022
@arthurgeron-work
Copy link
Author

Identified that this only happens if all available qualities resolutions can't be decoded by the Android device

@maxstoller
Copy link
Contributor

Hi @arthurgeron-work, I noticed this content is not an IVS stream. The IVS player SDK is designed to work with IVS content. Playback of 3P content is considered best-effort.

Based on the decode error in the logs, it looks like the device is not able to decode the 1280x2274 stream. I think the Snapdragon 450 chipset used in the Samsung A11 only supports up to 1080p. I suggest trying a 1080x1920 stream.

I will bring this feedback to the team and see if we can better handle these errors.

@arthurgeron-work
Copy link
Author

I see! Only that I think the player shouldn't be switching to a null quality and trying to load it anyway, instead at least it should trigger the react "onError" method right?

@maxstoller
Copy link
Contributor

Agreed, it sounds like we may be able to improve our error handling here. We will look into this. Thanks for the feedback.

@maxstoller
Copy link
Contributor

@arthurgeron-work Just to confirm, does the app crash when you try to play the stream, or does playback fail without onError being triggered?

@arthurgeron-work
Copy link
Author

The player throws an exception in the Native level but it does not bubble up to the JS Thread, the player keeps looping.

@arthurgeron-work
Copy link
Author

I'm recording a video right now to clarify

@maxstoller
Copy link
Contributor

It looks like the app doesn't crash, but onError is never triggered even though the video is not decodable. The issue is clear now. Thanks for the video.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants