Bug 59486

Summary: [ANDROID] Segmentation Fault
Product: GStreamer SDK Reporter: Luis Linietsky <luis.linietsky>
Component: Linux SDK DistributionAssignee: bugs
Status: NEEDINFO --- QA Contact:
Severity: normal    
Priority: medium    
Version: 2012.11   
Hardware: ARM   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Luis Linietsky 2013-01-16 22:46:35 UTC
Hi, 
I am building Tutorial5 for Android from Gstreamer SDK demos with following plugins enabled in the Android.mk file:
$(GSTREAMER_PLUGINS_CORE) $(GSTREAMER_PLUGINS_PLAYBACK) $(GSTREAMER_PLUGINS_CODECS) $(GSTREAMER_PLUGINS_NET) $(GSTREAMER_PLUGINS_SYS)   fragmented mpegtsdemux ffmpeg  faad audioparsers audioconvert typefindfunctions

and, using the following video, hardcoded in the defaultMediaUri variable:
http://gl.dlatv.net/oregan/TestSIN-AES/playlist.m3u8

but when I play it, the first frame from the movie is perfectly drown, but freezes after that, and from "adb logcat" I get the following output:

D/libEGL  (13412): loaded /system/lib/egl/libEGL_mali.so
D/libEGL  (13412): loaded /system/lib/egl/libGLESv1_CM_mali.so
D/libEGL  (13412): loaded /system/lib/egl/libGLESv2_mali.so
D/        (13412): Device driver API match
D/        (13412): Device driver API version: 10
D/        (13412): User space API version: 10 
D/        (13412): mali: REVISION=Linux-r2p4-02rel0 BUILD_DATE=Fri May  4 10:32:42 KST 2012 
E/libEGL  (13412): call to OpenGL ES API with no current context (logged once per thread)
W/libOpenSLES(13412): Leaving Object::GetInterface (SL_RESULT_FEATURE_UNSUPPORTED)
W/libOpenSLES(13412): Leaving OutputMix::GetDestinationOutputDeviceIDs (SL_RESULT_BUFFER_INSUFFICIENT)
E/DataRouter( 1817): usb connection is true 
E/DataRouter( 1817): DSR is ON. Don't send DTR ON.
I/GStreamer(13412): Media size changed to 853x480
I/GStreamer(13412): onMeasure called with 853x480
F/libc    (13412): @@@ ABORTING: INVALID HEAP ADDRESS IN dlfree
F/libc    (13412): Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1)
I/DEBUG   ( 1815): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG   ( 1815): Build fingerprint: 'samsung/GT-I9100/GT-I9100:4.0.4/IMM76D/UHLQ2:user/release-keys'
I/DEBUG   ( 1815): pid: 13412, tid: 13631  >>> com.gst_sdk_tutorials.tutorial_5 <<<
I/DEBUG   ( 1815): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr deadbaad
I/DEBUG   ( 1815):  r0 deadbaad  r1 00000001  r2 40000000  r3 00000000
I/DEBUG   ( 1815):  r4 00000000  r5 00000027  r6 4005c4e8  r7 4006b514
I/DEBUG   ( 1815):  r8 009d1778  r9 00902db0  10 00100000  fp 00000001
I/DEBUG   ( 1815):  ip ffffffff  sp 52a769a0  lr 4003d5a9  pc 40039938  cpsr 60000030
I/DEBUG   ( 1815):  d0  a1a8f075abaaee12  d1  235a6009d0f5f562
I/DEBUG   ( 1815):  d2  274fc008f8abd356  d3  e111891697ebeee9
I/DEBUG   ( 1815):  d4  34c87c77ef133607  d5  bc51fd081e424a11
I/DEBUG   ( 1815):  d6  7855d516f4ffd5c1  d7  9db814db45397eec
I/DEBUG   ( 1815):  d8  0000000000000000  d9  0000000000000000
I/DEBUG   ( 1815):  d10 0000000000000000  d11 0000000000000000
I/DEBUG   ( 1815):  d12 0000000000000000  d13 0000000000000000
I/DEBUG   ( 1815):  d14 0000000000000000  d15 0000000000000000
I/DEBUG   ( 1815):  d16 4024000000000000  d17 4024000000000000
I/DEBUG   ( 1815):  d18 3ff0000000000000  d19 0000000000000000
I/DEBUG   ( 1815):  d20 0000000000000000  d21 0000000000000000
I/DEBUG   ( 1815):  d22 3ff0000000000000  d23 0000000000000000
I/DEBUG   ( 1815):  d24 3ff0000000000000  d25 0000000000000000
I/DEBUG   ( 1815):  d26 0000000000000000  d27 0000000000000000
I/DEBUG   ( 1815):  d28 ffffffffffffffff  d29 ffffffffffffffff
I/DEBUG   ( 1815):  d30 0000000000000000  d31 0000000000000000
I/DEBUG   ( 1815):  scr 80000012
I/DEBUG   ( 1815): 
I/DEBUG   ( 1815):          #00  pc 00017938  /system/lib/libc.so
I/DEBUG   ( 1815):          #01  pc 000137c2  /system/lib/libc.so
I/DEBUG   ( 1815):          #02  pc 00015b00  /system/lib/libc.so (dlfree)
I/DEBUG   ( 1815):          #03  pc 00016178  /system/lib/libc.so (free)
I/DEBUG   ( 1815):          #04  pc 007905a8  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #05  pc 00790684  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so (g_free)
I/DEBUG   ( 1815):          #06  pc 006a43c6  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #07  pc 006b436a  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so (gst_mini_object_unref)
I/DEBUG   ( 1815):          #08  pc 00645d82  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #09  pc 00646824  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #10  pc 006b8168  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so (gst_pad_push)
I/DEBUG   ( 1815):          #11  pc 001f82fc  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #12  pc 001f926e  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #13  pc 001f3cf0  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #14  pc 006b6df6  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #15  pc 006b70b2  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #16  pc 006b80e0  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so (gst_pad_push)
I/DEBUG   ( 1815):          #17  pc 00646b5c  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #18  pc 006ca0b6  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #19  pc 006ca838  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #20  pc 007a1a92  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #21  pc 007a154c  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):          #22  pc 00012ebc  /system/lib/libc.so (__thread_entry)
I/DEBUG   ( 1815):          #23  pc 00012a10  /system/lib/libc.so (pthread_create)
I/DEBUG   ( 1815): 
I/DEBUG   ( 1815): code around pc:
I/DEBUG   ( 1815): 40039918 4623b15c 2c006824 e026d1fb b12368db  \.#F$h.,..&..h#.
I/DEBUG   ( 1815): 40039928 21014a17 6011447a 48124798 24002527  .J.!zD.`.G.H'%.$
I/DEBUG   ( 1815): 40039938 f7f47005 2106eeac ef48f7f5 460aa901  .p.....!..H....F
I/DEBUG   ( 1815): 40039948 f04f2006 94015380 94029303 eb04f7f5  . O..S..........
I/DEBUG   ( 1815): 40039958 4622a905 f7f52002 f7f4eb0e 2106ee98  .."F. .........!
I/DEBUG   ( 1815): 
I/DEBUG   ( 1815): code around lr:
I/DEBUG   ( 1815): 4003d588 41f0e92d 46804c0c 447c2600 68a56824  -..A.L.F.&|D$h.h
I/DEBUG   ( 1815): 4003d598 e0076867 300cf9b5 dd022b00 47c04628  gh.....0.+..(F.G
I/DEBUG   ( 1815): 4003d5a8 35544306 37fff117 6824d5f4 d1ee2c00  .CT5...7..$h.,..
I/DEBUG   ( 1815): 4003d5b8 e8bd4630 bf0081f0 00028f96 41f0e92d  0F..........-..A
I/DEBUG   ( 1815): 4003d5c8 fb01b086 9004f602 461f4815 4615460c  .........H.F.F.F
I/DEBUG   ( 1815): 
I/DEBUG   ( 1815): memory map around addr deadbaad:
I/DEBUG   ( 1815): be84a000-be86b000 [stack]
I/DEBUG   ( 1815): (no map for address)
I/DEBUG   ( 1815): ffff0000-ffff1000 [vectors]
I/DEBUG   ( 1815): 
I/DEBUG   ( 1815): stack:
I/DEBUG   ( 1815):     52a76960  00000001  
I/DEBUG   ( 1815):     52a76964  52a769a0  
I/DEBUG   ( 1815):     52a76968  40066820  /system/lib/libc.so
I/DEBUG   ( 1815):     52a7696c  0000000c  
I/DEBUG   ( 1815):     52a76970  400667b4  /system/lib/libc.so
I/DEBUG   ( 1815):     52a76974  4006b8a8  
I/DEBUG   ( 1815):     52a76978  00000000  
I/DEBUG   ( 1815):     52a7697c  4003d5a9  /system/lib/libc.so
I/DEBUG   ( 1815):     52a76980  00000000  
I/DEBUG   ( 1815):     52a76984  52a769b4  
I/DEBUG   ( 1815):     52a76988  4005c4e8  /system/lib/libc.so
I/DEBUG   ( 1815):     52a7698c  4006b514  
I/DEBUG   ( 1815):     52a76990  009d1778  [heap]
I/DEBUG   ( 1815):     52a76994  4003c715  /system/lib/libc.so
I/DEBUG   ( 1815):     52a76998  df0027ad  
I/DEBUG   ( 1815):     52a7699c  00000000  
I/DEBUG   ( 1815): #00 52a769a0  52a7699c  
I/DEBUG   ( 1815):     52a769a4  00000001  
I/DEBUG   ( 1815):     52a769a8  4005c4cc  /system/lib/libc.so
I/DEBUG   ( 1815):     52a769ac  00000005  
I/DEBUG   ( 1815):     52a769b0  52a769cc  
I/DEBUG   ( 1815):     52a769b4  fffffbdf  
I/DEBUG   ( 1815):     52a769b8  52a769cc  
I/DEBUG   ( 1815):     52a769bc  52a769cc  
I/DEBUG   ( 1815):     52a769c0  4005fa68  /system/lib/libc.so
I/DEBUG   ( 1815):     52a769c4  400357c7  /system/lib/libc.so
I/DEBUG   ( 1815): #01 52a769c8  00000000  
I/DEBUG   ( 1815):     52a769cc  20404040  
I/DEBUG   ( 1815):     52a769d0  524f4241  
I/DEBUG   ( 1815):     52a769d4  474e4954  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 1815):     52a769d8  4e49203a  /system/usr/icu/icudt46l.dat
I/DEBUG   ( 1815):     52a769dc  494c4156  /dev/ashmem/dalvik-mark-stack (deleted)
I/DEBUG   ( 1815):     52a769e0  45482044  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 1815):     52a769e4  41205041  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 1815):     52a769e8  45524444  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 1815):     52a769ec  49205353  /system/framework/filterfw.odex
I/DEBUG   ( 1815):     52a769f0  6c64204e  
I/DEBUG   ( 1815):     52a769f4  65657266  
I/DEBUG   ( 1815):     52a769f8  00905f00  [heap]
I/DEBUG   ( 1815):     52a769fc  00000000  
I/DEBUG   ( 1815):     52a76a00  00000000  
I/DEBUG   ( 1815):     52a76a04  00000000  
I/DEBUG   ( 1815):     52a76a08  008d7190  [heap]
I/DEBUG   ( 1815):     52a76a0c  00000000  
I/DEBUG   ( 1815):     52a76a10  01055858  [heap]
I/DEBUG   ( 1815):     52a76a14  0018c020  [heap]
I/DEBUG   ( 1815):     52a76a18  514feb59  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):     52a76a1c  514fdfab  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):     52a76a20  5151c515  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):     52a76a24  00000000  
I/DEBUG   ( 1815):     52a76a28  51a5c056  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):     52a76a2c  00000000  
I/DEBUG   ( 1815):     52a76a30  01055858  [heap]
I/DEBUG   ( 1815):     52a76a34  0018c020  [heap]
I/DEBUG   ( 1815):     52a76a38  5208233c  
I/DEBUG   ( 1815):     52a76a3c  0018c020  [heap]
I/DEBUG   ( 1815):     52a76a40  514feb59  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):     52a76a44  514fdfab  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):     52a76a48  0018c020  [heap]
I/DEBUG   ( 1815):     52a76a4c  00000000  
I/DEBUG   ( 1815):     52a76a50  00000000  
I/DEBUG   ( 1815):     52a76a54  51516a65  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):     52a76a58  00000000  
I/DEBUG   ( 1815):     52a76a5c  52082124  
I/DEBUG   ( 1815):     52a76a60  008a10bc  [heap]
I/DEBUG   ( 1815):     52a76a64  00000001  
I/DEBUG   ( 1815):     52a76a68  00000410  
I/DEBUG   ( 1815):     52a76a6c  01050a08  [heap]
I/DEBUG   ( 1815):     52a76a70  01050600  [heap]
I/DEBUG   ( 1815):     52a76a74  00028417  [heap]
I/DEBUG   ( 1815):     52a76a78  00000498  
I/DEBUG   ( 1815):     52a76a7c  4006b658  
I/DEBUG   ( 1815):     52a76a80  00100000  [heap]
I/DEBUG   ( 1815):     52a76a84  40036cb5  /system/lib/libc.so
I/DEBUG   ( 1815):     52a76a88  010507f8  [heap]
I/DEBUG   ( 1815):     52a76a8c  00028427  [heap]
I/DEBUG   ( 1815):     52a76a90  000006a8  
I/DEBUG   ( 1815):     52a76a94  00000020  
I/DEBUG   ( 1815):     52a76a98  4006b650  
I/DEBUG   ( 1815):     52a76a9c  00000093  
I/DEBUG   ( 1815):     52a76aa0  00100000  [heap]
I/DEBUG   ( 1815):     52a76aa4  40037b19  /system/lib/libc.so
I/DEBUG   ( 1815):     52a76aa8  01050800  [heap]
I/DEBUG   ( 1815):     52a76aac  010505f8  [heap]
I/DEBUG   ( 1815):     52a76ab0  00000000  
I/DEBUG   ( 1815):     52a76ab4  51516a65  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):     52a76ab8  5151c515  /data/data/com.gst_sdk_tutorials.tutorial_5/lib/libgstreamer_android.so
I/DEBUG   ( 1815):     52a76abc  00902db0  [heap]
I/DEBUG   ( 1815):     52a76ac0  0100e900  [heap]
I/DEBUG   ( 1815):     52a76ac4  0100e904  [heap]
I/DEBUG   ( 1815):     52a76ac8  00cd0a00  [heap]
I/DEBUG   ( 1815):     52a76acc  43b871c8  /dev/ashmem/dalvik-heap (deleted)
I/DEBUG   ( 1815):     52a76ad0  009d1770  [heap]
I/DEBUG   ( 1815):     52a76ad4  0100e904  [heap]
I/DEBUG   ( 1815):     52a76ad8  00cd0a00  [heap]
I/DEBUG   ( 1815):     52a76adc  40037b05  /system/lib/libc.so
Comment 1 Sebastian Dröge (slomo) 2013-01-17 09:57:39 UTC
Could you run the tutorial with the debug GStreamer SDK in gdb and get a backtrace of this crash?

Which device are you testing on?
Comment 2 Luis Linietsky 2013-01-17 15:31:29 UTC
(In reply to comment #1)
> Could you run the tutorial with the debug GStreamer SDK in gdb and get a
> backtrace of this crash?
> 
> Which device are you testing on?

Hi, could you give a hint on how to run gdb on android ?
Comment 3 Luis Linietsky 2013-01-18 23:38:35 UTC
(In reply to comment #2)
> (In reply to comment #1)
> > Could you run the tutorial with the debug GStreamer SDK in gdb and get a
> > backtrace of this crash?
> > 
> > Which device are you testing on?
> 
> Hi, could you give a hint on how to run gdb on android ?

I couldn't  run it with gdb. However, I came into the conclusion that there is an issue when playing the audio stream from an MPEG4 movie with H246 and ACC-MP4A coded audio.
I Tryed the same movie in MPEG4 with H264 but with ACC-LC coded audio and everything worked OK.
Comment 4 Andoni Morales Alastruey 2013-01-19 11:31:49 UTC
(In reply to comment #3)
> I couldn't  run it with gdb. However, I came into the conclusion that there
> is an issue when playing the audio stream from an MPEG4 movie with H246 and
> ACC-MP4A coded audio.
> I Tryed the same movie in MPEG4 with H264 but with ACC-LC coded audio and
> everything worked OK.

Can you please attach the sample of the file that's failing please? For instance I tried playing back the first fragment from http://gl.dlatv.net/oregan/TestSIN-AES/playlist.m3u8 without any issue using faad.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.