Support for MPEG-L2 audio decoder

Hello,
I have a vim3L board and I was trying to decode an audio stream, encoded with mpeg-L2, and an error occurred. When I checked media_codecs.xml file I noticed there’s no entry for this type of audio streams, why is that? I checked in other amlogic STBs and they all have the decoder, why was it removed?
Thanks in advance.

@Bragado which is your system ? android or ubuntu ? which firmware was you used for ? Could you show the full error log info. THX

System: Android 9
Firmware: VIM3L_PIE_20191030 (Build no)
Error when performing MediaCodec.createDecoderByType (same parameters are working in vim2) :
Logcat:

01-07 15:35:03.342 3408 4978 I MessageMonitor: G[15]: [NU-AmNuPlayer] Last Message 14 is [‘mckN’:0], cost 20 Us
01-07 15:35:03.345 3408 4980 I MessageMonitor: G[15]: [NU-GenericSource] Last Message 28 is [0x00000009:0], cost 223 Us
01-07 15:35:03.881 3408 5013 I MessageMonitor: G[15]: [NU-NuPlayerRenderer] Last Message 184 is [‘paus’:0], cost 28 Us
01-07 15:35:03.882 3408 5017 I MessageMonitor: G[15]: [NU-NuPlayerDecoder-audN] Last Message 295 is [‘rndr’:0], cost 97 Us
01-07 15:35:03.882 3408 5017 I MessageMonitor: [NU-NuPlayerDecoder-audN] DQ pts(1718666), In pts(0) [0/4], Out pts(1728749),Render pts(-1[0]), Drop pts(-1[0]) [0/4]
01-07 15:35:06.409 5810 6140 W MediaCodec-JNI: try to release MediaCodec from JMediaCodec::~JMediaCodec()…
01-07 15:35:06.413 5810 6140 W MediaCodec-JNI: done releasing MediaCodec from JMediaCodec::~JMediaCodec().
--------- beginning of crash
01-07 15:35:06.469 5810 6140 E AndroidRuntime: FATAL EXCEPTION: DecodeEncodeStreams
01-07 15:35:06.469 5810 6140 E AndroidRuntime: Process: com.example.decoderencoder, PID: 5810
01-07 15:35:06.469 5810 6140 E AndroidRuntime: java.lang.IllegalArgumentException: Failed to initialize audio/mpeg-L2, error 0xfffffffe
01-07 15:35:06.469 5810 6140 E AndroidRuntime: at android.media.MediaCodec.native_setup(Native Method)
01-07 15:35:06.469 5810 6140 E AndroidRuntime: at android.media.MediaCodec.(MediaCodec.java:1811)
01-07 15:35:06.469 5810 6140 E AndroidRuntime: at android.media.MediaCodec.createDecoderByType(MediaCodec.java:1759)
01-07 15:35:06.469 5810 6140 E AndroidRuntime: at com.example.decoderencoder.library.core.decoder.DefaultDecoder.makeCodecReady(DefaultDecoder.java:34)
01-07 15:35:06.469 5810 6140 E AndroidRuntime: at com.example.decoderencoder.library.core.decoder.MediaCodecAudioRenderer.initCodec(MediaCodecAudioRenderer.java:37)
01-07 15:35:06.469 5810 6140 E AndroidRuntime: at com.example.decoderencoder.library.core.decoder.MediaCodecAudioRenderer.onStarted(MediaCodecAudioRenderer.java:28)
01-07 15:35:06.469 5810 6140 E AndroidRuntime: at com.example.decoderencoder.library.core.decoder.BaseRenderer.start(BaseRenderer.java:50)
01-07 15:35:06.469 5810 6140 E AndroidRuntime: at com.example.decoderencoder.library.core.DefaultTranscoder.initCodecs(DefaultTranscoder.java:212)
01-07 15:35:06.469 5810 6140 E AndroidRuntime: at com.example.decoderencoder.library.core.DefaultTranscoder$DecodeEncodeStreams.run(DefaultTranscoder.java:344)
--------- beginning of system
01-07 15:35:06.498 3546 5170 W ActivityManager: Force finishing activity com.example.decoderencoder/.DecoderActivity
01-07 15:35:06.510 3546 3562 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.stats.service.DropBoxEntryAddedReceiver
01-07 15:35:06.510 3546 3562 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.intent.action.DROPBOX_ENTRY_ADDED flg=0x10 (has extras) } to com.google.android.gms/.chimera.GmsIntentOperationService$PersistentTrustedReceiver
01-07 15:35:06.533 5810 6140 I Process : Sending signal. PID: 5810 SIG: 9
01-07 15:35:06.658 3546 3620 W InputDispatcher: channel ‘1da29be com.example.decoderencoder/com.example.decoderencoder.DecoderActivity (server)’ ~ Consumer closed input channel or an error occurred. events=0x9
01-07 15:35:06.659 3546 3620 E InputDispatcher: channel ‘1da29be com.example.decoderencoder/com.example.decoderencoder.DecoderActivity (server)’ ~ Channel is unrecoverably broken and will be disposed!
01-07 15:35:06.659 3412 5024 E OMXNodeInstance: !!! Observer died. Quickly, do something, … anything…
01-07 15:35:06.659 3412 3768 E OMXNodeInstance: !!! Observer died. Quickly, do something, … anything…
01-07 15:35:06.659 3412 5025 E OMXNodeInstance: !!! Observer died. Quickly, do something, … anything…
01-07 15:35:06.659 3546 3620 W InputDispatcher: channel ‘fd392d1 com.example.decoderencoder/com.example.decoderencoder.MainActivity (server)’ ~ Consumer closed input channel or an error occurred. events=0x9
01-07 15:35:06.659 3546 3620 E InputDispatcher: channel ‘fd392d1 com.example.decoderencoder/com.example.decoderencoder.MainActivity (server)’ ~ Channel is unrecoverably broken and will be disposed!
01-07 15:35:06.660 3412 6155 I OmxComponent: OMX_CommandStateSet 740 Cmd 0 nParam1 0x2
01-07 15:35:06.660 3412 6144 I OmxComponent: OMX_CommandStateSet 740 Cmd 0 nParam1 0x2
01-07 15:35:06.660 3412 6144 I OmxComponent: STATE_SET: OMX_StateExecuting => OMX_StateIdle : OMX.amlogic.video.encoder.avc
01-07 15:35:06.660 3412 6144 I OmxComponent: OMX.amlogic.video.encoder.avc: flush input
01-07 15:35:06.660 3412 6155 I OmxComponent: STATE_SET: OMX_StateExecuting => OMX_StateIdle : OMX.amlogic.avc.decoder.awesome
01-07 15:35:06.660 3412 6155 I OmxComponent: OMX.amlogic.avc.decoder.awesome: flush input
01-07 15:35:06.660 3412 6155 V AmlogicVideoDecoderAwesome: flushInput:980 >
01-07 15:35:06.660 3412 6155 V OMX_WorkerPeer: hardware/amlogic/omx/omx_framework/WorkerPeer.cpp:flushInput:56 --------------------
01-07 15:35:06.660 3412 6155 V AmlogicVideoDecoderAwesome: pause:291 >
01-07 15:35:06.660 3412 6155 V AmlogicVideoDecoderAwesome: reset:337 >
01-07 15:35:06.660 3412 6155 D AmlogicVideoDecoderAwesome: reset_1
01-07 15:35:06.661 3412 6155 I amcodec : AMSTREAM_SET_OMX_RUNNING ret=0
01-07 15:35:06.669 3546 3565 W libprocessgroup: kill(-5810, 9) failed: No such process
01-07 15:35:06.670 3546 3558 I WindowManager: WIN DEATH: Window{1da29be u0 com.example.decoderencoder/com.example.decoderencoder.DecoderActivity}
01-07 15:35:06.670 3546 3558 W InputDispatcher: Attempted to unregister already unregistered input channel ‘1da29be com.example.decoderencoder/com.example.decoderencoder.DecoderActivity (server)’
01-07 15:35:06.671 3546 5506 I ActivityManager: Process com.example.decoderencoder (pid 5810) has died: fore TOP
01-07 15:35:06.675 3546 5170 I WindowManager: WIN DEATH: Window{fd392d1 u0 com.example.decoderencoder/com.example.decoderencoder.MainActivity}
01-07 15:35:06.675 3546 5170 W InputDispatcher: Attempted to unregister already unregistered input channel ‘fd392d1 com.example.decoderencoder/com.example.decoderencoder.MainActivity (server)’
01-07 15:35:06.686 3336 3366 W SurfaceFlinger: Attempting to set client state on removed layer: com.example.decoderencoder/com.example.decoderencoder.DecoderActivity#0
01-07 15:35:06.686 3336 3366 W SurfaceFlinger: Attempting to destroy on removed layer: com.example.decoderencoder/com.example.decoderencoder.DecoderActivity#0
01-07 15:35:06.694 3308 3308 I Zygote : Process 5810 exited due to signal (9)
01-07 15:35:06.696 3412 6144 V OMX_WorkerPeer: hardware/amlogic/omx/omx_framework/WorkerPeer.cpp:flushInput:56 --------------------
01-07 15:35:06.696 3412 6144 I OmxComponent: OMX.amlogic.video.encoder.avc: flush output
01-07 15:35:06.704 3412 6155 I amcodec : [codec_reset:1127]ret=0
01-07 15:35:06.704 3412 6155 D AmlogicVideoDecoderAwesome: reset_2
01-07 15:35:06.704 3412 6155 D AmlogicVideoDecoderAwesome: mDTaskStatus=1
01-07 15:35:06.704 3412 6155 V AmlogicVideoDecoderAwesome: start:299 >
01-07 15:35:06.704 3412 6155 E ThreadWorker: pthread on exit wait clean
01-07 15:35:06.704 3412 6155 D AmlogicVideoDecoderAwesome: mVideo start
01-07 15:35:06.704 3412 6155 V AmlogicVideoDecoderAwesome: flushInput:1005 >
01-07 15:35:06.704 3412 6155 I OmxComponent: OMX.amlogic.avc.decoder.awesome: flush output
01-07 15:35:06.704 3412 6155 V AmlogicVideoDecoderAwesome: flushOutput:1008 >
01-07 15:35:06.704 3412 6155 D AmlogicVideoDecoderAwesome: displayThread__flushOutput__fillBufferDone
01-07 15:35:06.705 3412 6155 I chatty : uid=1046(mediacodec) decoder.awesome identical 2 lines
01-07 15:35:06.705 3412 6155 D AmlogicVideoDecoderAwesome: displayThread__flushOutput__fillBufferDone
01-07 15:35:06.706 3412 6183 V OMX_WorkerPeer: hardware/amlogic/omx/omx_framework/WorkerPeer.cpp:runWorkerStatic:154 --------------------
01-07 15:35:06.706 3412 6183 V OMX_WorkerPeer: hardware/amlogic/omx/omx_framework/WorkerPeer.cpp:runWorker:160 --------------------
01-07 15:35:06.709 3546 3570 W ActivityManager: setHasOverlayUi called on unknown pid: 5810
01-07 15:35:06.715 3546 3565 W libprocessgroup: kill(-5810, 9) failed: No such process
01-07 15:35:06.715 3546 3565 I libprocessgroup: Successfully killed process cgroup uid 10061 pid 5810 in 46ms
01-07 15:35:06.716 3412 6144 V OMX_WorkerPeer: hardware/amlogic/omx/omx_framework/WorkerPeer.cpp:flushOutput:88 --------------------
01-07 15:35:06.717 3412 6144 I OmxComponent: STATE_TRANS: OMX_StateExecuting => OMX_StateIdle : OMX.amlogic.video.encoder.avc
01-07 15:35:06.717 3412 6144 I chatty : uid=1046(mediacodec) deo.encoder.avc identical 1 line
01-07 15:35:06.717 3412 6144 I OmxComponent: STATE_TRANS: OMX_StateExecuting => OMX_StateIdle : OMX.amlogic.video.encoder.avc
01-07 15:35:06.717 3412 6144 I OmxComponent: STATE_DONE: OMX_StateExecuting => OMX_StateIdle : OMX.amlogic.video.encoder.avc
01-07 15:35:06.717 3412 6155 V AmlogicVideoDecoderAwesome: flushOutput:1062 >
01-07 15:35:06.717 3412 6155 D AmlogicVideoDecoderAwesome: mVideo stop
01-07 15:35:06.721 3412 6155 V AmlogicVideoDecoderAwesome: stop:325 >
01-07 15:35:06.724 3412 6155 I OmxComponent: STATE_TRANS: OMX_StateExecuting => OMX_StateIdle : OMX.amlogic.avc.decoder.awesome
01-07 15:35:06.724 3412 6155 I chatty : uid=1046(mediacodec) decoder.awesome identical 3 lines
01-07 15:35:06.724 3412 6155 I OmxComponent: STATE_TRANS: OMX_StateExecuting => OMX_StateIdle : OMX.amlogic.avc.decoder.awesome
01-07 15:35:06.724 3412 6155 I OmxComponent: STATE_DONE: OMX_StateExecuting => OMX_StateIdle : OMX.amlogic.avc.decoder.awesome
01-07 15:35:06.735 3546 3564 I ActivityManager: Start proc 6185:com.example.decoderencoder/u0a61 for activity com.example.decoderencoder/.MainActivity
01-07 15:35:06.736 6185 6185 I Zygote : seccomp disabled by setenforce 0
01-07 15:35:06.743 6185 6185 I .decoderencode: Late-enabling -Xcheck:jni
01-07 15:35:06.743 3323 3323 I [Gralloc]: framebuffer hal alread move to hwcomposer
01-07 15:35:06.748 3546 3557 I system_server: Background concurrent copying GC freed 37989(1829KB) AllocSpace objects, 0(0B) LOS objects, 19% free, 7MB/9MB, paused 136us total 104.863ms
01-07 15:35:06.760 3412 6144 I OmxComponent: OMX_CommandStateSet 740 Cmd 0 nParam1 0x1
01-07 15:35:06.760 3412 6144 I OmxComponent: STATE_SET: OMX_StateIdle => OMX_StateLoaded : OMX.amlogic.video.encoder.avc
01-07 15:35:06.760 3412 6144 V OMX_WorkerPeer: hardware/amlogic/omx/omx_framework/WorkerPeer.cpp:flushInput:56 --------------------
01-07 15:35:06.760 3412 6144 V OMX_WorkerPeer: hardware/amlogic/omx/omx_framework/WorkerPeer.cpp:flushOutput:88 --------------------
01-07 15:35:06.763 3412 6155 I OmxComponent: OMX_CommandStateSet 740 Cmd 0 nParam1 0x1
01-07 15:35:06.763 3412 6155 I OmxComponent: STATE_SET: OMX_StateIdle => OMX_StateLoaded : OMX.amlogic.avc.decoder.awesome
01-07 15:35:06.763 3412 6155 V AmlogicVideoDecoderAwesome: releaseResources:379 >
01-07 15:35:06.763 3412 6155 V AmlogicVideoDecoderAwesome: tearDown:873 >
01-07 15:35:06.763 3412 6155 V AmlogicVideoDecoderAwesome: tearDown:1524 >
01-07 15:35:06.763 3412 6155 V AmlogicVideoDecoderAwesome: initializeState_l:1602 >
01-07 15:35:06.773 3412 6144 I OmxComponent: STATE_TRANS: OMX_StateIdle => OMX_StateLoaded : OMX.amlogic.video.encoder.avc
01-07 15:35:06.773 3412 6144 I OmxComponent: STATE_DONE: OMX_StateIdle => OMX_StateLoaded : OMX.amlogic.video.encoder.avc
01-07 15:35:06.778 3412 6155 D AmlogicVideoDecoderAwesome: free ION Video device instance ID:0
01-07 15:35:06.786 3412 6155 V AmlogicVideoDecoderAwesome: disable osd video …-1529747908
01-07 15:35:06.787 3412 6155 I OmxComponent: STATE_TRANS: OMX_StateIdle => OMX_StateLoaded : OMX.amlogic.avc.decoder.awesome
01-07 15:35:06.787 3412 6155 I OmxComponent: STATE_DONE: OMX_StateIdle => OMX_StateLoaded : OMX.amlogic.avc.decoder.awesome
01-07 15:35:06.788 6185 6185 W .decoderencode: Using default instruction set features for ARM CPU variant (cortex-a9) using conservative defaults
01-07 15:35:06.873 3412 5025 D OmxComponentManagerImpl: DecreaseEntryNumByName pEntry->mNum=1, pEntry->mMaxNum:9,componentName:OMX.amlogic.avc.decoder.awesome
01-07 15:35:06.873 3412 5025 I omx_core: OMX_freeHandle_num_= 0
01-07 15:35:06.873 3412 5025 D AmlogicVideoDecoderAwesome: ~AmlogicVideoDecoderAwesome
01-07 15:35:06.873 3412 5025 D AmlogicVideoDecoderAwesome: ~AmlogicVideoDecoder
01-07 15:35:06.873 3412 5025 D AmlogicVideoDecoderAwesome: ~AmlogicVideoDecoder, mOmxInstancenum 0
01-07 15:35:06.874 3412 3768 D OmxComponentManagerImpl: DecreaseEntryNumByName pEntry->mNum=1, pEntry->mMaxNum:3,componentName:OMX.amlogic.video.encoder.avc
01-07 15:35:06.874 3412 3768 I omx_core: OMX_freeHandle_num_= 0
01-07 15:35:06.874 3412 3768 D OmxVideoEncoder: ~OmxVideoEncoder
01-07 15:35:06.887 6185 6185 I .decoderencode: The ClassLoaderContext is a special shared library.
01-07 15:35:07.121 6185 6185 W .decoderencode: JIT profile information will not be recorded: profile file does not exits.
01-07 15:35:07.125 6185 6185 I chatty : uid=10061(com.example.decoderencoder) identical 10 lines
01-07 15:35:07.126 6185 6185 W .decoderencode: JIT profile information will not be recorded: profile file does not exits.
01-07 15:35:07.154 6185 6185 I InstantRun: starting instant run server: is main process
01-07 15:35:07.436 6185 6185 W .decoderencode: Accessing hidden method Landroid/view/View;->computeFitSystemWindows(Landroid/graphics/Rect;Landroid/graphics/Rect;)Z (light greylist, reflection)
01-07 15:35:07.438 6185 6185 W .decoderencode: Accessing hidden method Landroid/view/ViewGroup;->makeOptionalFitsSystemWindows()V (light greylist, reflection)