amazon-chime-sdk-android icon indicating copy to clipboard operation
amazon-chime-sdk-android copied to clipboard

AndroidVideoDecoder: Media decoder stop failed

Open DmytroBatyuk opened this issue 9 months ago • 0 comments

Describe the bug Changed demo app is been used for testing. Made changes

  • hardcoded metadata to join the meeting
  • using library instead of SDK sources
    implementation 'software.aws.chimesdk:amazon-chime-sdk-media:0.20.0'
    implementation 'software.aws.chimesdk:amazon-chime-sdk:0.20.0'

Metadata is different for each attendee b\c of different credentials etc. Both devices running the same demo app but with changed credentials. Both devices join meeting and I can hear bi-directional audio. Both devices have accepted all permissions and are able to start camera for video feed transferring.

Remote video feed is not displayed on X915(look at additional context to get device info) and I think it could be because of not supported platform. Logcat continue printing AndroidVideoDecoder error messages (please take a look at logs below).

There is no issue and no Logcat prints when I replace X915 with Pixel 7a.

We are migrating from Twilio to Chime and didn't have any issues with Twilio before so I think it might be the issue in Chime SDK.

To Reproduce Steps to reproduce the behavior:

  1. By using demo app join Chime meeting
  2. Enable local video on X915 device.
  3. Enable local video on Samsung S10e device
  4. Local and remote video feed displayed on Samsung S10e
  5. Only local video displayed on X915.

Expected behavior Both devices display local and remote video feed.

Logs

24-05-14 15:26:04.506  6714-6714  MeetingFragment  com...hime.sdkdemo  D  Media metrics received: {videoAvailableReceiveBandwidth=206981.0, videoReceiveBitrate=97829.9658097507, videoReceivePacketLossPercent=0.0, audioReceivePacketLossPercent=0.0, audioSendPacketLossPercent=0.0}
2024-05-14 15:26:04.783  6714-23222 Service...gement com...hime.sdkdemo  W  Waited one second for [email protected]::IOmx/default. Waiting another...
2024-05-14 15:26:05.299  6714-22474 MeetingFragment  com...hime.sdkdemo  D  [Function] [onActiveSpeakerScoreChanged]: 712359428707072138: 0.0,466925424513366238: 0.0
2024-05-14 15:26:05.395  6714-23222 OMXClient        com...hime.sdkdemo  I  IOmx service obtained
2024-05-14 15:26:05.403  6714-23222 AHierar...achine com...hime.sdkdemo  W  Warning message AMessage(what = 'omxI') = {
                                                                              int32_t type = 0
                                                                              int32_t event = 3
                                                                              int32_t data1 = 1
                                                                              int32_t data2 = 117440527
                                                                            } unhandled in root state.
2024-05-14 15:26:05.446  6714-22915 Logging          com...hime.sdkdemo  I  AndroidVideoDecoder: initDecodeInternal done
2024-05-14 15:26:05.508  6714-6714  MeetingFragment  com...hime.sdkdemo  D  Media metrics received: {videoAvailableReceiveBandwidth=206981.0, videoReceiveBitrate=93724.95572296264, videoReceivePacketLossPercent=0.0, audioReceivePacketLossPercent=0.0, audioSendPacketLossPercent=0.0}
2024-05-14 15:26:05.759  6714-23222 ACodec           com...hime.sdkdemo  E  OMX/mediaserver died, signalling error!
2024-05-14 15:26:05.759  6714-23222 ACodec           com...hime.sdkdemo  E  signalError(omxError 0x8000100d, internalError -32)
2024-05-14 15:26:05.760  6714-23221 MediaCodec       com...hime.sdkdemo  E  Codec reported err 0xffffffe0, actionCode 0, while in state 6
2024-05-14 15:26:05.762  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: deliverDecodedFrame failed
2024-05-14 15:26:05.762  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
2024-05-14 15:26:05.762  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
                                                                            	at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
                                                                            	at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:2698)
                                                                            	at org.amazon.chime.webrtc.MediaCodecWrapperFactoryImpl$MediaCodecWrapperImpl.dequeueOutputBuffer(MediaCodecWrapperFactoryImpl.java:72)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder.deliverDecodedFrame(AndroidVideoDecoder.java:406)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder$1.run(AndroidVideoDecoder.java:390)
2024-05-14 15:26:05.764  6714-22915 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: dequeueInputBuffer failed
2024-05-14 15:26:05.764  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: deliverDecodedFrame failed
2024-05-14 15:26:05.764  6714-22915 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
2024-05-14 15:26:05.764  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
2024-05-14 15:26:05.764  6714-22915 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
                                                                            	at android.media.MediaCodec.native_dequeueInputBuffer(Native Method)
                                                                            	at android.media.MediaCodec.dequeueInputBuffer(MediaCodec.java:2635)
                                                                            	at org.amazon.chime.webrtc.MediaCodecWrapperFactoryImpl$MediaCodecWrapperImpl.dequeueInputBuffer(MediaCodecWrapperFactoryImpl.java:61)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder.decode(AndroidVideoDecoder.java:271)
2024-05-14 15:26:05.764  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
                                                                            	at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
                                                                            	at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:2698)
                                                                            	at org.amazon.chime.webrtc.MediaCodecWrapperFactoryImpl$MediaCodecWrapperImpl.dequeueOutputBuffer(MediaCodecWrapperFactoryImpl.java:72)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder.deliverDecodedFrame(AndroidVideoDecoder.java:406)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder$1.run(AndroidVideoDecoder.java:390)
2024-05-14 15:26:05.765  6714-22915 Logging          com...hime.sdkdemo  I  AndroidVideoDecoder: release
2024-05-14 15:26:05.765  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: deliverDecodedFrame failed
2024-05-14 15:26:05.765  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
2024-05-14 15:26:05.765  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
                                                                            	at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
                                                                            	at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:2698)
                                                                            	at org.amazon.chime.webrtc.MediaCodecWrapperFactoryImpl$MediaCodecWrapperImpl.dequeueOutputBuffer(MediaCodecWrapperFactoryImpl.java:72)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder.deliverDecodedFrame(AndroidVideoDecoder.java:406)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder$1.run(AndroidVideoDecoder.java:390)
2024-05-14 15:26:05.765  6714-23238 Logging          com...hime.sdkdemo  I  AndroidVideoDecoder: Releasing MediaCodec on output thread
2024-05-14 15:26:05.766  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: Media decoder stop failed
2024-05-14 15:26:05.766  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
2024-05-14 15:26:05.766  6714-23238 Logging          com...hime.sdkdemo  E  AndroidVideoDecoder: java.lang.IllegalStateException
                                                                            	at android.media.MediaCodec.native_stop(Native Method)
                                                                            	at android.media.MediaCodec.stop(MediaCodec.java:2084)
                                                                            	at org.amazon.chime.webrtc.MediaCodecWrapperFactoryImpl$MediaCodecWrapperImpl.stop(MediaCodecWrapperFactoryImpl.java:51)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder.releaseCodecOnOutputThread(AndroidVideoDecoder.java:660)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder.access$200(AndroidVideoDecoder.java:32)
                                                                            	at org.amazon.chime.webrtc.AndroidVideoDecoder$1.run(AndroidVideoDecoder.java:392)
2024-05-14 15:26:05.769  6714-23238 Logging          com...hime.sdkdemo  I  AndroidVideoDecoder: Release on output thread done
2024-05-14 15:26:05.770  6714-22915 Logging          com...hime.sdkdemo  I  AndroidVideoDecoder: initDecodeInternal name: OMX.rk.video_decoder.avc type: H264 width: 528 height: 960
2024-05-14 15:26:05.776  6714-23242 Service...gement com...hime.sdkdemo  I  getService: Trying again for [email protected]::IOmx/default...
2024-05-14 15:26:06.299  6714-22474 MeetingFragment  com...hime.sdkdemo  D  [Function] [onActiveSpeakerScoreChanged]: 712359428707072138: 0.0,466925424513366238: 0.0
2024-05-14 15:26:06.513  6714-6714  MeetingFragment  com...hime.sdkdemo  D  Media metrics received: {videoAvailableReceiveBandwidth=206981.0, videoReceiveBitrate=107013.72957681716, videoReceivePacketLossPercent=0.0, audioReceivePacketLossPercent=0.0, audioSendPacketLossPercent=0.0}
2024-05-14 15:26:06.776  6714-23242 Service...gement com...hime.sdkdemo  W  Waited one second for [email protected]::IOmx/default. Waiting another...

Screenshots If applicable, add screenshots to help explain your problem.

Test environment Info (please complete the following information):

  • Device: Akuvox X915
  • OS: Android 9
  • Version amazon-chime-sdk: 0.20.0
  • Can you reproduce this in the demo app? Yes, I can.

Additional context Information about device from adb shell getprops

[dalvik.vm.heapgrowthlimit]: [192m]
[dalvik.vm.heapmaxfree]: [8m]
[dalvik.vm.heapminfree]: [512k]
[dalvik.vm.heapsize]: [512m]
[dalvik.vm.heapstartsize]: [16m]
[dalvik.vm.isa.arm.features]: [default]
[dalvik.vm.isa.arm.variant]: [cortex-a15]
[dalvik.vm.lockprof.threshold]: [500]
[ro.product.board]: [rk30sdk]
[ro.product.cpu.abi]: [armeabi-v7a]
[ro.product.cpu.abi2]: [armeabi]
[ro.product.cpu.abilist]: [armeabi-v7a,armeabi]
[ro.product.cpu.abilist32]: [armeabi-v7a,armeabi]
[ro.product.cpu.abilist64]: []
[ro.vendor.product.cpu.abilist]: [armeabi-v7a,armeabi]
[ro.vendor.product.cpu.abilist32]: [armeabi-v7a,armeabi]
[ro.vendor.product.cpu.abilist64]: []


Add any other context about the problem here.

DmytroBatyuk avatar May 14 '24 23:05 DmytroBatyuk