Modified Android tutorial 5 on rk3229 cannot play HLS, a general supporting library error.

Sirius Wu ccwu660601 at gmail.com
Fri Oct 11 13:41:48 UTC 2019


HI,

after further examination, I'd like to solve the AAC problem first. From
the logs there are four errors/warnings with AAC,

1. gstamc.c:3508:gst_amc_codec_info_to_caps Unable to map AAC profile
0x00000005
    0:00:00.653634917 0x99abe8e0
../sys/androidmedia/gstamc.c:3508:gst_amc_codec_info_to_caps Unable to map
AAC profile 0x0000001d
    0:00:00.653776667 0x99abe8e0
../sys/androidmedia/gstamc.c:3508:gst_amc_codec_info_to_caps Unable to map
AAC profile 0x00000017
    0:00:00.653877583 0x99abe8e0
../sys/androidmedia/gstamc.c:3508:gst_amc_codec_info_to_caps Unable to map
AAC profile 0x00000027
2. E/MediaCodec: getBufferAndFormat - not executing
3. <amcaudiodec-omxgoogleaacdecoder0> error:
Failed to call Java method: java.lang.IllegalStateException
    java.lang.IllegalStateException
        at android.media.MediaCodec.getBuffer(Native Method)
        at android.media.MediaCodec.getInputBuffer(MediaCodec.java:2992)
4. E/ACodec: [OMX.rk.video_decoder.avc] storeMetaDataInBuffers failed w/
err -1010

Maybe they are all from the same error.

In order to find a solution to this problem, I'd like to build my version
of gstramer binaries android Universal。How can I do it? the master branch
says it requires Android API level >= 28. But the rk3229 board runs API 25.
Should I use the old Anroid Universal 1.14.4. How can I build an Android
Universal 1.14.4? or because I only need a version for armv7, can I build
one only for armv7?

Nicolas Dufresne <nicolas at ndufresne.ca> 於 2019年10月11日 週五 下午7:55寫道:

>
>
> Le ven. 11 oct. 2019 01 h 11, 吳政昌 <ccwu660601 at gmail.com> a écrit :
>
>> Hi,
>>
>> I've modified the android tutorial 5. What I modified is changing the
>> movie to an HLS link and adding plugins specified by
>> GSTREAMER_PLUGINS_CODECS_RESTRICTED.
>>
>> The modified tutorial encountered a general supporting library error.
>>
>> From the logs below, I found androidmedia cannot map some AAC profiles,
>> but still is initialized successfully. So I think its no problem.
>>
>
> It's a problem if that prevents software fallback.
>
>
>> There is a internal error storeMetaDataInBuffers failed,but on
>> stackoverflow someone said this is harmless.
>>
>> There is another error from libEGL saying validate_display:99 error 3008
>> (EGL_BAD_DISPLAY)。And another one saying  called unimplemented OpenGL ES
>> API。
>>
>
> That would need some investigation, aka finding which GLES API isn't
> implemented on your Mali blob. Looks like the Mali saga continues ...
>
>
>> How can I decide the reason for the general supporting library error?
>>
>> -- Logs start here.
>>
>> Connected to process 20951 on device 'rockchip-k10c-H201906110844'.
>> Capturing and displaying logcat messages from application. This behavior
>> can be disabled in the "Logcat output" section of the "Debugger" settings
>> page.
>> I/art: Late-enabling -Xcheck:jni
>> I/VideoCapabilities: Unsupported profile 4 for video/mp4v-es
>> I/VideoCapabilities: Unsupported profile 4 for video/mp4v-es
>> E/GStreamer+amc: 0:00:00.653369500 0x99abe8e0 ../sys/androidmedia/
>> gstamc.c:3508:gst_amc_codec_info_to_caps Unable to map AAC profile
>> 0x00000005
>>     0:00:00.653634917 0x99abe8e0
>> ../sys/androidmedia/gstamc.c:3508:gst_amc_codec_info_to_caps Unable to map
>> AAC profile 0x0000001d
>>     0:00:00.653776667 0x99abe8e0
>> ../sys/androidmedia/gstamc.c:3508:gst_amc_codec_info_to_caps Unable to map
>> AAC profile 0x00000017
>>     0:00:00.653877583 0x99abe8e0
>> ../sys/androidmedia/gstamc.c:3508:gst_amc_codec_info_to_caps Unable to map
>> AAC profile 0x00000027
>> I/GStreamer: GStreamer initialization complete
>> D/lvjinhua:  Failed while trying resolve alarm filter file, not exists
>> I/GStreamer: Activity created with no saved state:
>>       playing:false position:0 duration: 0 uri:
>> https://indonesia-out.oss-ap-southeast-1.aliyuncs.com/indonesia_video_out/20190919/videoHlsHd/video.m3u8
>> D/GStreamer+tutorial-5: 0:00:03.696905626 0x99abe8e0
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:482:gst_native_init
>> Created CustomData at 0x99276b80
>>     0:00:03.697111835 0x99abe8e0
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:484:gst_native_init
>> Created GlobalRef for app object at 0x10084e
>> D/GStreamer+tutorial-5: 0:00:03.697472335 0x99693c00
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:396:app_function
>> Creating pipeline in CustomData at 0x99276b80
>> D/GStreamer+tutorial-5: 0:00:03.700560210 0x99693c00
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:449:app_function
>> Entering main loop... (CustomData:0x99276b80)
>>     0:00:03.700755335 0x99693c00
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:75:attach_current_thread
>> Attaching thread 0x99693c00
>> D/GStreamer+tutorial-5: 0:00:03.702067835 0x99693c00
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:115:set_ui_message
>> Setting message to: State changed to READY
>> I/[Gralloc]:  ion device open success! fd = 46
>> I/GStreamer: onMeasure called with 320x240
>> I/mali_so: [File] :
>> hardware/rockchip/driver/./src/base/arch/arch_011_udd/base_arch_main.c;
>> [Line] : 565; [Func] : deal_with_version_affairs_rk_ext;
>>     arm_release_ver of this mali_so is 'r7p0-00rel1', rk_so_ver is '4 at 0'
>> for 312x_android_7.1, built at '09:49:26', on 'Aug 18 2017'.
>>     [File] :
>> hardware/rockchip/driver/./src/base/arch/arch_011_udd/base_arch_main.c;
>> [Line] : 578; [Func] : deal_with_version_affairs_rk_ext;
>>     mali_ver_property has been set to 'r7p0-00rel1-5-4 at 0', to return.
>> I/GStreamer: onMeasure called with 320x240
>> I/OpenGLRenderer: Initialized EGL, version 1.4
>> D/OpenGLRenderer: Swap behavior 1
>> D/GStreamer: Surface created: Surface(name=null)/@0x992c82d
>>     Surface changed to format 4 width 577 height 433
>> D/GStreamer+tutorial-5: 0:00:03.821582918 0x99abe8e0
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:607:gst_native_surface_init
>> Received surface 0xbe9883b0 (native window 0x991b3808)
>>     0:00:03.821784168 0x99abe8e0
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:75:attach_current_thread
>> Attaching thread 0x99abe8e0
>>     0:00:03.821885668 0x99abe8e0
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:369:check_initialization_complete
>> Initialization complete, notifying application. native_window:0x991b3808
>> main_loop:0x9938ae10
>> I/GStreamer: GStreamer initialized:
>>       playing:false position:0 uri:
>> https://indonesia-out.oss-ap-southeast-1.aliyuncs.com/indonesia_video_out/20190919/videoHlsHd/video.m3u8
>> D/GStreamer+tutorial-5: 0:00:03.822406001 0x99abe8e0
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:515:gst_native_set_uri
>> Setting URI to
>> https://indonesia-out.oss-ap-southeast-1.aliyuncs.com/indonesia_video_out/20190919/videoHlsHd/video.m3u8
>>     0:00:03.823171043 0x99abe8e0
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:566:gst_native_set_position
>> Scheduling seek to 0:00:00.000000000 for later
>> D/GStreamer+tutorial-5: 0:00:03.823424501 0x99abe8e0
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:547:gst_native_pause
>> Setting state to PAUSED
>> W/libOpenSLES: Leaving Object::GetInterface
>> (SL_RESULT_FEATURE_UNSUPPORTED)
>> I/MediaCodec:
>> callingProcessName:org.freedesktop.gstreamer.tutorials.tutorial_5
>> I/OMXClient: MuxOMX ctor
>> I/ACodec: onAllocateComponent:6728 mSoftCodecPref:0
>> componentName:OMX.google.aac.decoder
>>     onAllocateComponent:6759 mSoftCodecPref:0
>> componentName:OMX.google.aac.decoder
>> E/libEGL: validate_display:99 error 3008 (EGL_BAD_DISPLAY)
>> W/GStreamer+glcontext: 0:00:05.144984544 0x976b0030
>> ../gst-libs/gst/gl/egl/gstglcontext_egl.c:325:gst_gl_context_egl_dump_config:<glcontextegl0>
>> unknown EGL_COLOR_BUFFER_TYPE value 3300
>>     0:00:05.145724210 0x976b0030
>> ../gst-libs/gst/gl/egl/gstglcontext_egl.c:325:gst_gl_context_egl_dump_config:<glcontextegl0>
>> unknown EGL_COLOR_BUFFER_TYPE value 3300
>> E/libEGL: called unimplemented OpenGL ES API
>> I/MediaCodec:
>> callingProcessName:org.freedesktop.gstreamer.tutorials.tutorial_5
>> I/OMXClient: MuxOMX ctor
>> I/ACodec: onAllocateComponent:6728 mSoftCodecPref:0
>> componentName:OMX.rk.video_decoder.avc
>> I/ACodec: onAllocateComponent:6759 mSoftCodecPref:0
>> componentName:OMX.rk.video_decoder.avc
>> E/ACodec: [OMX.google.aac.decoder] ERROR(0x80001001)
>>     signalError(omxError 0x80001001, internalError -2147483648)
>> E/MediaCodec: Codec reported err 0x80001001, actionCode 0, while in state
>> 6
>> E/MediaCodec: getBufferAndFormat - not executing
>> I/MediaCodec: [OMX.rk.video_decoder.avc] setting surface generation to
>> 21453825
>> W/GStreamer+amcaudiodec: 0:00:05.264748127 0x976b2ac0
>> ../sys/androidmedia/gstamcaudiodec.c:1218:gst_amc_audio_dec_handle_frame:<amcaudiodec-omxgoogleaacdecoder0>
>> error:
>> Failed to call Java method: java.lang.IllegalStateException
>>     java.lang.IllegalStateException
>>         at android.media.MediaCodec.getBuffer(Native Method)
>>         at android.media.MediaCodec.getInputBuffer(MediaCodec.java:2992)
>> E/ACodec: [OMX.rk.video_decoder.avc] storeMetaDataInBuffers failed w/ err
>> -1010
>> D/GStreamer+tutorial-5: 0:00:05.265847711 0x99693c00
>> /media/ccwu/e7458cf5-858e-4184-afc4-73301087e303/home/alvin/mapacode/git/gst-docs/examples/tutorials/android/android-tutorial-5/jni/tutorial-5.c:115:set_ui_message
>> Setting message to: Error received from element
>> amcaudiodec-omxgoogleaacdecoder0: GStreamer encountered a general
>> supporting library error.
>>
>> --
>> 吳政昌 Sirius Wu
>>
>> +886927161530
>> +88662970665
>> Mapacode Inc.
>> 7F.-1, No.159, Jianping 17th St., Anping Dist., Tainan City 708, Taiwan
>> (R.O.C.)
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel



-- 
Sirius Wu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20191011/27f32b0a/attachment-0001.html>


More information about the gstreamer-devel mailing list