-
Notifications
You must be signed in to change notification settings - Fork 227
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
RTMP - Fatal signal 11 (SIGSEGV) when switching into airplane mode #52
Comments
@mekya Looks like totally lib rtmp related can you have a look. The issue is always reproducible |
I've having the exact same issue. If my streaming is offline I get:
|
thank you for this feedback and it is great to know the exact scenario, I am gonna try to look at today. |
#52 is my current issue. |
you are using latest exoplayer? |
|
2.6.0 is used |
were you able to reproduce the bug in your own setup? It always occurs once i switch to wifi or lose connectivity , it never occurs when the stream is unavailable. |
You already mentioned the version earlier. Sorry for that. I am just trying. Let you know about the progress soon |
For example it happens during playback after the buffer is consumed and if it tries to buffer new content the crash happens. |
During play i don't put the live parameter. |
@mekya were you able to reproduce the exception? |
Unfourtunately At first, I have tried the case you reported on this repo. It works, there will be no problem. After that I've merged the Exoplayer latest release with the repo above and tested again. It works again. However my tests are on android 6.0.1 Right now, I am downloading oreo image and will try on that. Anyway, I have something to do right now. I need to switch to some other task and return back this issue later today. |
my android version is 25, and it also occurs on android 7.0 devices in never tried the code with Android 6.0.1 interesting. |
Any chance there to reproduce? |
I switched back to this issue again. Unfourtunately, I could not reproduce this bug. Here is the last thing I have done Started the rtmp stream after a while I enabled the airplane mode on the emulator and it stops normally without creating an exception or fatal signal. Is it possible for you to try the your case with Exoplayer demo app on this repo or the original the repo? |
hmmm interesting sure i can try to reproduce it using your repo no worries. |
Did you ever tried that on a physical device or only on emulators? |
@mkiisoft What is the Android Version you are testing on? And which phone are you using it? |
yeah I both tried on Android 8.0 Emulator and physical device (Samsung S5, Android 6.0.1) @keremkusmezer |
Let me test with a fork of the repo. |
@keremkusmezer Android 7.1.1 over a Moto Z Play. Fatal signal 11 only happen if the streaming is not running. |
Got a similar crash when switching from WiFi to let the 4G take the stream:
|
You got this crash on the demo app, right? or on your own app?
…On Thu, Dec 21, 2017 at 7:58 PM, Mariano Zorrilla ***@***.***> wrote:
Got a similar crash when switching from WiFi to let the 4G take the stream:
12-21 13:55:11.533 8526-9012/com.qna.app A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x54 in tid 9012 (Loader:Extracto)
[ 12-21 13:55:11.534 490: 490 W/ ]
debuggerd: handling request: pid=8526 uid=10346 gid=10346 tid=9012
12-21 13:55:11.537 9519-9519/? W/debuggerd: type=1400 audit(0.0:240): avc: denied { search } for uid=0 name="com.google.android.gms" dev="dm-1" ino=28211 scontext=u:r:debuggerd:s0 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=0
12-21 13:55:11.540 9519-9519/? W/debuggerd: type=1400 audit(0.0:241): avc: denied { search } for uid=0 name="com.google.android.gms" dev="dm-1" ino=28211 scontext=u:r:debuggerd:s0 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=0
12-21 13:55:11.606 9519-9519/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
12-21 13:55:11.607 9519-9519/? A/DEBUG: Build fingerprint: 'motorola/addison/addison:7.1.1/NPNS26.118-22-2-8/10:user/release-keys'
12-21 13:55:11.607 9519-9519/? A/DEBUG: Revision: 'p700'
12-21 13:55:11.607 9519-9519/? A/DEBUG: ABI: 'arm'
12-21 13:55:11.607 9519-9519/? A/DEBUG: pid: 8526, tid: 9012, name: Loader:Extracto >>> com.qna.app <<<
12-21 13:55:11.607 9519-9519/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x54
12-21 13:55:11.607 9519-9519/? A/DEBUG: r0 00000000 r1 2708a06e r2 00000000 r3 8f52c400
12-21 13:55:11.607 9519-9519/? A/DEBUG: r4 00000000 r5 930b4ae4 r6 00000015 r7 930b4a48
12-21 13:55:11.607 9519-9519/? A/DEBUG: r8 8f527400 r9 00000008 sl 930b4ac8 fp 00000001
12-21 13:55:11.607 9519-9519/? A/DEBUG: ip 8db98f40 sp 930b4a18 lr 8db8faef pc 8db8fb00 cpsr 600f0030
12-21 13:55:11.610 9519-9519/? A/DEBUG: backtrace:
12-21 13:55:11.610 9519-9519/? A/DEBUG: #00 pc 00007b00 /data/app/com.qna.app-1/lib/arm/librtmp-jni.so (RTMP_ReadPacket+759)
12-21 13:55:11.610 9519-9519/? A/DEBUG: #1 pc 000083ab /data/app/com.qna.app-1/lib/arm/librtmp-jni.so (RTMP_GetNextMediaPacket+26)
12-21 13:55:11.610 9519-9519/? A/DEBUG: #2 pc 0000a30b /data/app/com.qna.app-1/lib/arm/librtmp-jni.so
12-21 13:55:11.610 9519-9519/? A/DEBUG: #3 pc 0000a295 /data/app/com.qna.app-1/lib/arm/librtmp-jni.so (RTMP_Read+376)
12-21 13:55:11.610 9519-9519/? A/DEBUG: #4 pc 00004065 /data/app/com.qna.app-1/lib/arm/librtmp-jni.so (Java_net_butterflytv_rtmp_1client_RtmpClient_nativeRead+100)
12-21 13:55:11.610 9519-9519/? A/DEBUG: #5 pc 000ae519 /system/lib/libart.so (art_quick_generic_jni_trampoline+40)
12-21 13:55:11.610 9519-9519/? A/DEBUG: #6 pc 000148c5 /dev/ashmem/dalvik-jit-code-cache (deleted)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#52 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADS8-_3tCtYjPqLg-U2c_uQ0NUoKwP7oks5tCo4tgaJpZM4RF9n6>
.
|
@mekya This is my code:
It's my own app but, as you see, I didn't make any modification. Is the most default values that can be. This happens to me with r.2.5.6 and 2.6.0 library of ExoPlayer and RTMP. I'm using a Moto Z Play Android 7.1.1 |
I see. Is it possible to test the same scenario on demo app?
…On Thu, Dec 21, 2017 at 8:58 PM, Mariano Zorrilla ***@***.***> wrote:
@mekya <https://github.com/mekya> This is my code:
val rtmpMediaSource = ExtractorMediaSource(Uri.parse("the url of the stream"), RtmpDataSource.RtmpDataSourceFactory(), DefaultExtractorsFactory(), Handler(), null)
It's my own app but, as you see, I didn't make any modification. Is the
most default values that can be.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#52 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/ADS8-0_DJff9A7IgDoj6nq04-UsCsIlnks5tCpxKgaJpZM4RF9n6>
.
|
Is it possible the issue only reproduces on a particular architecture (i.e. x86)? |
@ojw28 I'm not using x86. I'm using a normal Moto Z with Nougat 7.1.1... should be like any other Android device from 2015 till now and @keremkusmezer mention this issue over devices and emulators. @mekya It's the same implementation as the demo... that's were I took the code from. This is not a new bug. The FATAL signal 11 when the RTMP is offline happen to me since the first version for ExoPlayer and now I see it switching from WiFi to 4G and when RTMP is offline. |
@mekya I can repro similar issue if RTMP url is unreachable. On further analysis I found that native library is trying to free the unallocated memory. A/libc: Invalid address 0x94274100 passed to free: value not allocated. |
Hi, This bug has been fixed with 3.0.1 |
There is no other comment about this issue. Closing. Please reopen if you are still having the same problem. |
Me too. Cannot play rtmp link. Please help me! |
Issue description
During RTMP stream playback with Exoplayer, when i switch the phone to airplane mode, exoplayer throws the following exception , the error handler block of exoplayer doesn't get called and the process dies.
E ExoPlayerImplInternal: Source error.
E ExoPlayerImplInternal: net.butterflytv.rtmp_client.RtmpClient$RtmpIOException
E ExoPlayerImplInternal: at net.butterflytv.rtmp_client.RtmpClient.open(RtmpClient.java:55)
E ExoPlayerImplInternal: at com.google.android.exoplayer2.ext.rtmp.RtmpDataSource.open(RtmpDataSource.java:57)
E ExoPlayerImplInternal: at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:141)
E ExoPlayerImplInternal: at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:702)
E ExoPlayerImplInternal: at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:315)
E ExoPlayerImplInternal: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
E ExoPlayerImplInternal: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
E ExoPlayerImplInternal: at java.lang.Thread.run(Thread.java:764)
F libc : Fatal signal 11 (SIGSEGV), code 1, fault addr 0xc22e83b4 in tid 22827 (Loader:Extracto), pid 21732 ()
Reproduction steps
Just start playing any stream with exoplayer and then switch to airplane mode or close the network connection.
Link to test content
Version of ExoPlayer being used
Exoplayer 2.6.0 is used
//Exoplayer Support Added Here
implementation 'com.google.android.exoplayer:exoplayer:2.6.0'
//Support For Rtmp Streaming Added Here
implementation 'com.google.android.exoplayer:extension-rtmp:2.6.0'
Device(s) and version(s) of Android being used
NEXUS 5 7.0
GM5 Plus 7.0
Android Emulator Android 8.1.0
Android Emulator Android 8.0
A full bug report captured from the device
bugreport-sdk_gphone_x86-OPM1.171004.001-2017-12-16-00-05-18.zip
Relevant part of the bug report:
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: Source error.
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: net.butterflytv.rtmp_client.RtmpClient$RtmpIOException
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: at net.butterflytv.rtmp_client.RtmpClient.open(RtmpClient.java:55)
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: at com.google.android.exoplayer2.ext.rtmp.RtmpDataSource.open(RtmpDataSource.java:57)
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:141)
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: at com.google.android.exoplayer2.source.ExtractorMediaPeriod$ExtractingLoadable.load(ExtractorMediaPeriod.java:702)
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:315)
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
12-16 00:04:59.321 10080 23330 29613 E ExoPlayerImplInternal: at java.lang.Thread.run(Thread.java:764)
12-16 00:04:59.322 10080 23330 29614 F libc : Fatal signal 11 (SIGSEGV), code 1, fault addr 0xc1feefb4 in tid 29614 (Loader:Extracto), pid 23330 (co.wormapp.worm)
12-16 00:04:59.342 10080 23330 23330 D wormlog : Player exception occurred:com.google.android.exoplayer2.ExoPlaybackException
12-16 00:04:59.342 10080 23330 23330 D wormlog : Player rtmp exception occurred:-3
12-16 00:04:59.342 10080 23330 23330 I ExoPlayerImpl: Release 1d5c0fe [ExoPlayerLib/2.6.0] [generic_x86, Android SDK built for x86, Google, 27] [goog.exo.core, goog.exo.rtmp]
12-16 00:04:59.338 10080 29670 29670 W crash_dump32: type=1400 audit(0.0:17): avc: denied { search } for name="uk.co.wormapp.worm" dev="dm-0" ino=115523 scontext=u:r:crash_dump:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=0
12-16 00:04:59.382 10080 29670 29670 I crash_dump32: obtaining output fd from tombstoned, type: kDebuggerdTombstone
12-16 00:04:59.382 1058 1511 1511 I /system/bin/tombstoned: received crash request for pid 23330
12-16 00:04:59.385 10080 29670 29670 I crash_dump32: performing dump of process 23330 (target tid = 29614)
12-16 00:04:59.385 10080 29670 29670 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
12-16 00:04:59.385 10080 29670 29670 F DEBUG : Build fingerprint: 'google/sdk_gphone_x86/generic_x86:8.1.0/OPM1.171004.001/4376136:user/release-keys'
12-16 00:04:59.385 10080 29670 29670 F DEBUG : Revision: '0'
12-16 00:04:59.385 10080 29670 29670 F DEBUG : ABI: 'x86'
12-16 00:04:59.385 10080 29670 29670 F DEBUG : pid: 23330, tid: 29614, name: Loader:Extracto >>> uk.co.wormapp.worm <<<
12-16 00:04:59.385 10080 29670 29670 F DEBUG : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0xc1feefb4
12-16 00:04:59.385 10080 29670 29670 F DEBUG : eax 13805f60 ebx fff80000 ecx 8a180000 edx 00000063
12-16 00:04:59.385 10080 29670 29670 F DEBUG : esi ae7df79c edi 8a182444
12-16 00:04:59.385 10080 29670 29670 F DEBUG : xcs 00000073 xds 0000007b xes 0000007b xfs 0000003b xss 0000007b
12-16 00:04:59.385 10080 29670 29670 F DEBUG : eip ae793921 ebp 8207f6c8 esp 8207f660 flags 00010a07
12-16 00:04:59.387 10080 29670 29670 F DEBUG :
12-16 00:04:59.387 10080 29670 29670 F DEBUG : backtrace:
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #00 pc 00093921 /system/lib/libc.so (arena_run_dalloc+113)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #1 pc 0008e500 /system/lib/libc.so (arena_dalloc_large_locked_impl+224)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #2 pc 0008e40b /system/lib/libc.so (je_arena_dalloc_large_junked_locked+43)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #3 pc 000b2cea /system/lib/libc.so (je_tcache_bin_flush_large+378)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #4 pc 000b3c0f /system/lib/libc.so (tcache_destroy+607)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #5 pc 000b3994 /system/lib/libc.so (je_tcache_cleanup+36)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #6 pc 000b4436 /system/lib/libc.so (je_tsd_cleanup+70)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #7 pc 000b54bc /system/lib/libc.so (je_tsd_cleanup_wrapper+44)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #8 pc 00071b84 /system/lib/libc.so (pthread_key_clean_all()+164)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #9 pc 000715d9 /system/lib/libc.so (pthread_exit+89)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #10 pc 0007144d /system/lib/libc.so (__pthread_start(void*)+61)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #11 pc 000205db /system/lib/libc.so (_start_thread+75)
12-16 00:04:59.387 10080 29670 29670 F DEBUG : #12 pc 0001ec16 /system/lib/libc.so (
The text was updated successfully, but these errors were encountered: