apivideo/api.video-reactnative-live-stream

RTMP Stream not received on Android

clacladev opened this issue · 4 comments

Describe the bug
I am running the example app on the Android simulator (api spec 31 and 33). I am able to Start Streaming but the RTMP stream is not received by the streaming provider.
Meanwhile testing on iOS device the example app, it works as expected.

To Reproduce
Steps to reproduce the behavior:

  1. yarn install
  2. yarn example android (Emulator)
  3. Settings > Set RTMP endpoint and Streaming Key
  4. Start Streaming

Expected behavior
On the streaming service I am using (Livepeer.studio) I expect to receive a streaming. Instead nothing happens.
Trying to do the same thing on iOS device instead works as expected.

Smartphone (please complete the following information):

  • Device: Pixel_3a_API_33_arm64-v8a(AVD) - 13 (Android Virtual Device)
  • OS: API 33

Additional context
Should it work on the Emulator? Or should it work just on real Android device?

To add more info.

I created an APK and provided to a colleague which has deep video protocols expertise.

He installed the APK on device and he provided this feedback:

The RTMP this app generates is completely corrupt:

[124+0] 58 bytes of H264 video keyframe header
[124+0] 4020 bytes of H264 video keyframe NALU
[158+0] 1476 bytes of H264 video iframe NALU
[191+0] 1060 bytes of H264 video iframe NALU
[224+0] 1412 bytes of H264 video iframe NALU
[235+0] 1524 bytes of H264 video iframe NALU
[221+0] 1476 bytes of H264 video iframe NALU
[231+0] 1540 bytes of H264 video iframe NALU
[219+0] 1412 bytes of H264 video iframe NALU
[229+0] 1572 bytes of H264 video iframe NALU
[238+0] 1588 bytes of H264 video iframe NALU
[226+0] 2116 bytes of H264 video iframe NALU
[212+0] 2404 bytes of H264 video iframe NALU
[222+0] 1156 bytes of H264 video iframe NALU
[233+0] 1572 bytes of H264 video iframe NALU
[220+0] 1588 bytes of H264 video iframe NALU
[229+0] 1956 bytes of H264 video iframe NALU
[217+0] 1780 bytes of H264 video iframe NALU
[227+0] 2036 bytes of H264 video iframe NALU
[213+0] 2052 bytes of H264 video iframe NALU
[224+0] 2228 bytes of H264 video iframe NALU
[211+0] 2228 bytes of H264 video iframe NALU
[220+0] 1476 bytes of H264 video iframe NALU
[208+0] 1828 bytes of H264 video iframe NALU
[218+0] 1956 bytes of H264 video iframe NALU
[204+0] 2036 bytes of H264 video iframe NALU
[215+0] 1284 bytes of H264 video iframe NALU
[225+0] 1348 bytes of H264 video iframe NALU
[235+0] 1428 bytes of H264 video iframe NALU
[245+0] 964 bytes of H264 video iframe NALU
[209+0] 868 bytes of H264 video iframe NALU

Numbers in front are timestamps in milliseconds. They're all over the place!

I hope this helps to identify the issue.

Hi,

Could you check that your issue is fixed in the main branch?

I just checked-out main and run the android app. It works! Thanks a lot for the help on this

This should be fixed in v1.2.2.