AnsweredAssumed Answered

Gstreamer with Jelly Bean and IMX6.

Question asked by Yves Bard on Jul 2, 2013
Latest reply on Aug 23, 2014 by Giuseppe Di Modica
Branched to a new discussion

Good morning,

 

     I want to use gstreamer on IMX6Q ( plateform Saber Lite ) with the Jelly Bean ( 4.2.2 ). I ve downloaded the tutorial of Gstreamer and compile it (http://docs.gstreamer.com/display/GstSDK/Android+tutorial+5%3A+A+Complete+media+player) . Gstreamer use the openMAX interface to access the hardware acceleration. The tutorial application stop the movie play with the message : can't configure supporting library.

 

The GStreamer tutorial works well with a Jelly Bean and another tablet. So I suspect that there's something wrong between the openMAX interface and the FSL. Do you have any hint of what it could be, or what I could do?

 

 

                      Thanks,

                        

                                   Yves

 

The error is :

I/GStreamer( 4030): GStreamer initialized:

I/GStreamer( 4030):   playing:false position:0 uri: file:///sdcard/Videos/star_trek2_tlr3-1080p-HDTN.mp4

D/GStreamer+tutorial-5( 4030): 0:01:20.830646010 0x40d6b880 jni/tutorial-5.c:444:gst_native_set_uri Setting URI to file:///sdcard/Videos/star_trek2_tlr3-1080p-HDTN.mp4

D/GStreamer+tutorial-5( 4030): 0:01:20.830870010 0x40d6b880 jni/tutorial-5.c:479:gst_native_set_position Scheduling seek to 0:00:00.000000000 for later

D/GStreamer+tutorial-5( 4030): 0:01:20.830953010 0x40d6b880 jni/tutorial-5.c:466:gst_native_pause Setting state to PAUSED

D/GStreamer+tutorial-5( 4030): 0:01:20.831329343 0x635e8860 jni/tutorial-5.c:104:set_ui_message Setting message to: State changed to READY

E/BufferQueue( 2431): [com.gst_sdk_tutorials.tutorial_5/com.gst_sdk_tutorials.tutorial_5.Tutorial5] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count

W/GStreamer+qtdemux( 4030): 0:01:20.935713010 0x636cc8f0 qtdemux_types.c:192:qtdemux_type_get unknown QuickTime node type avc1

W/GStreamer+qtdemux( 4030): 0:01:20.937303343 0x636cc8f0 qtdemux_types.c:192:qtdemux_type_get unknown QuickTime node type avcC

W/GStreamer+qtdemux( 4030): 0:01:20.938214343 0x636cc8f0 qtdemux_types.c:192:qtdemux_type_get unknown QuickTime node type avc1

W/GStreamer+qtdemux( 4030): 0:01:20.938432676 0x636cc8f0 qtdemux_types.c:192:qtdemux_type_get unknown QuickTime node type avcC

W/GStreamer+qtdemux( 4030): 0:01:20.946673010 0x636cc8f0 qtdemux.c:7106:qtdemux_parse_trak:<qtdemux0> unknown version 00000000

I/OMXClient( 4030): Using client-side OMX mux.

I/OMXClient( 4030): Using client-side OMX mux.

I/vpu-lib ( 2434): Product Info: i.MX6Q/D/S

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.streaming.sw-based' already exists, ignoring this one.

E/OMXMaster( 4030): A component of name 'OMX.Freescale.std.parser.fsl.sw-based' already exists, ignoring this one.

E/OMXNodeInstance( 4030): OMX_GetExtensionIndex failed

I/SoftAAC2( 4030): Downmixing multichannel AAC to stereo

I/SoftAAC2( 4030): Reconfiguring decoder: 48000 Hz, 2 channels

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3c166e0, paddr: 0x395da000, vaddr: 0x454b7000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3d3b260, paddr: 0x3c12b000, vaddr: 0x48008000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3422b40, paddr: 0x3cf7b000, vaddr: 0x48e58000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd6831ee0, paddr: 0x3e374000, vaddr: 0x4a251000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd683d620, paddr: 0x36d55000, vaddr: 0x42c32000

I/vpu-lib ( 2434): bitstreamMode 1, chromaInterleave 0, mapType 0, tiled2LinearEnable 0

I/vpu-lib ( 2434): <gpu> free handle: 0xd3c166e0, paddr: 0x395da000, vaddr: 0x454b7000

I/vpu-lib ( 2434): <gpu> free handle: 0xd3d3b260, paddr: 0x3c12b000, vaddr: 0x48008000

I/vpu-lib ( 2434): <gpu> free handle: 0xd3422b40, paddr: 0x3cf7b000, vaddr: 0x48e58000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3c166e0, paddr: 0x395da000, vaddr: 0x454b7000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3d3b260, paddr: 0x3c12b000, vaddr: 0x48008000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3422b40, paddr: 0x3cf7b000, vaddr: 0x48e58000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3f7e9c0, paddr: 0x3d1c5000, vaddr: 0x490a2000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3f7e5c0, paddr: 0x3d40f000, vaddr: 0x492ec000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3f7eac0, paddr: 0x3d9b8000, vaddr: 0x49895000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd355a0a0, paddr: 0x3dc02000, vaddr: 0x49adf000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3d3b6e0, paddr: 0x3e874000, vaddr: 0x4a751000

I/vpu-lib ( 2434): <gpu> alloc handle: 0xd3d3b8e0, paddr: 0x3ee71000, vaddr: 0x4ad4e000

W/libOpenSLES( 4030): Leaving Object::GetInterface (SL_RESULT_FEATURE_UNSUPPORTED)

E/GStreamer+opensles_sink( 4030): 0:01:25.826698344 0x63a56920 openslessink.c:152:_opensles_query_capabilities:<GstOpenSLESSink@0x63bb27f8> engine.GetInterface(IODeviceCapabilities) failed(0x0000000c)

W/libOpenSLES( 4030): Leaving OutputMix::GetDestinationOutputDeviceIDs (SL_RESULT_BUFFER_INSUFFICIENT)

E/GStreamer+amcvideodec( 4030): 0:01:25.973212344 0x63a56920 gstamcvideodec.c:774:gst_amc_video_dec_fill_buffer:<amcvideodec-omxfreescalestdvideodecoderavcv3hwbased1> Slice height not set

W/GStreamer+amcvideodec( 4030): 0:01:25.974369344 0x63a56920 gstamcvideodec.c:1175:gst_amc_video_dec_loop:<amcvideodec-omxfreescalestdvideodecoderavcv3hwbased1> error: Invalid sized input buffer

D/GStreamer+tutorial-5( 4030): 0:01:25.974784010 0x635e8860 jni/tutorial-5.c:104:set_ui_message Setting message to: Error received from element amcvideodec-omxfreescalestdvideodecoderavcv3hwbased1: Could not configure supporting library.

E/GStreamer+amcaudiodec( 4030): 0:01:25.976972677 0x64c76320 gstamcaudiodec.c:1128:gst_amc_audio_dec_handle_frame:<amcaudiodec-omxgoogleaacdecoder1> Downstream returned wrong-state

W/SoftAAC2( 4030): AAC decoder returned error 4098, substituting silence

E/GStreamer+amcvideodec( 4030): 0:01:25.977958677 0x63abf200 gstamcvideodec.c:1520:gst_amc_video_dec_handle_frame:<amcvideodec-omxfreescalestdvideodecoderavcv3hwbased1> Downstream returned not-negotiated

E/GStreamer+amc( 4030): 0:01:25.987239677 0x637a3b50 gstamc.c:701:gst_amc_codec_dequeue_output_buffer Failed to call Java method

D/dalvikvm( 4030): threadid=18: thread exiting, not yet detached (count=0)

I/vpu-lib ( 2434): <gpu> free handle: 0xd3d3b6e0, paddr: 0x3e874000, vaddr: 0x4a751000

I/vpu-lib ( 2434): <gpu> free handle: 0xd355a0a0, paddr: 0x3dc02000, vaddr: 0x49adf000

I/vpu-lib ( 2434): <gpu> free handle: 0xd3f7eac0, paddr: 0x3d9b8000, vaddr: 0x49895000

I/vpu-lib ( 2434): <gpu> free handle: 0xd3f7e5c0, paddr: 0x3d40f000, vaddr: 0x492ec000

I/vpu-lib ( 2434): <gpu> free handle: 0xd3f7e9c0, paddr: 0x3d1c5000, vaddr: 0x490a2000

I/vpu-lib ( 2434): <gpu> free handle: 0xd3422b40, paddr: 0x3cf7b000, vaddr: 0x48e58000

I/vpu-lib ( 2434): <gpu> free handle: 0xd3d3b260, paddr: 0x3c12b000, vaddr: 0x48008000

I/vpu-lib ( 2434): <gpu> free handle: 0xd3c166e0, paddr: 0x395da000, vaddr: 0x454b7000

D/dalvikvm( 4030): threadid=19: thread exiting, not yet detached (count=0)

D/dalvikvm( 4030): threadid=14: thread exiting, not yet detached (count=0)

D/dalvikvm( 4030): threadid=13: thread exiting, not yet detached (count=0)

W/ThrottleService( 2716): unable to find stats for iface rmnet0

D/dalvikvm( 2716): GC_CONCURRENT freed 708K, 13% free 6523K/7492K, paused 5ms+5ms, total 46ms

D/dalvikvm( 2716): GC_FOR_ALLOC freed 502K, 14% free 6507K/7492K, paused 44ms, total 44ms

I/ActivityManager( 2716): START u0 {act=com.android.systemui.recent.action.TOGGLE_RECENTS flg=0x10800000 cmp=com.android.systemui/.recent.RecentsActivity (has extras)} from pid 2847

D/dalvikvm( 2716): GC_FOR_ALLOC freed 107K, 14% free 6476K/7492K, paused 37ms, total 37ms

D/dalvikvm( 2716): GC_FOR_ALLOC freed 3K, 13% free 6534K/7492K, paused 35ms, total 35ms

I/dalvikvm-heap( 2716): Grow heap (frag case) to 6.618MB for 69908-byte allocation

D/dalvikvm( 2716): GC_FOR_ALLOC freed <1K, 13% free 6603K/7564K, paused 35ms, total 35ms

E/BufferQueue( 2431): [com.android.systemui/com.android.systemui.recent.RecentsActivity] dequeueBuffer: can't dequeue multiple buffers without setting the buffer count

D/GStreamer( 4030): Surface destroyed

D/GStreamer+tutorial-5( 4030): 0:13:59.518345434 0x40d6b880 jni/tutorial-5.c:531:gst_native_surface_finalize Releasing Native Window 0x6390bd28

D/GStreamer+tutorial-5( 4030): 0:13:59.519244100 0x635e8860 jni/tutorial-5.c:104:set_ui_message Setting message to: State changed to READY

D/GStreamer( 4030): Saving state, playing:true position:0 duration: 0 uri: file:///sdcard/Videos/star_trek2_tlr3-1080p-HDTN.mp4

I/ActivityManager( 2716): Killing 4030:com.gst_sdk_tutorials.tutorial_5/u0a10038: remove task

E/OMXNodeInstance( 2434): !!! Observer died. Quickly, do something, ... anything...

W/InputDispatcher( 2716): channel '4142ad38 com.gst_sdk_tutorials.tutorial_5/com.gst_sdk_tutorials.tutorial_5.Tutorial5 (server)' ~ Consumer closed input channel or an error occurred. events=0x9

E/InputDispatcher( 2716): channel '4142ad38 com.gst_sdk_tutorials.tutorial_5/com.gst_sdk_tutorials.tutorial_5.Tutorial5 (server)' ~ Channel is unrecoverably broken and will be disposed!

I/vpu-lib ( 2434): <gpu> free handle: 0xd683d620, paddr: 0x36d55000, vaddr: 0x42c32000

I/vpu-lib ( 2434): <gpu> free handle: 0xd6831ee0, paddr: 0x3e374000, vaddr: 0x4a251000

I/vpu-lib ( 2434): <gpu> free handle: 0xd3d3b8e0, paddr: 0x3ee71000, vaddr: 0x4ad4e000

E/OMXNodeInstance( 2434): !!! Observer died. Quickly, do something, ... anything...

I/vpu-lib ( 2434): <gpu> free handle: 0xd3df7b20, paddr: 0x36224000, vaddr: 0x42101000

I/vpu-lib ( 2434): <gpu> free handle: 0xd6831260, paddr: 0x3de74000, vaddr: 0x49d51000

I/vpu-lib ( 2434): <gpu> free handle: 0xd6831660, paddr: 0x3eb64000, vaddr: 0x4aa41000

W/InputDispatcher( 2716): Attempted to unregister already unregistered input channel '4142ad38 com.gst_sdk_tutorials.tutorial_5/com.gst_sdk_tutorials.tutorial_5.Tutorial5 (server)'

 


Outcomes