ExoPlayer: Samsung SM-T585 crashes and turns off or restart.

Issue description

Device turns off or restarts after playback of a stream (stream with DRM license provided by mail). It’s probably related to auto quality change because sometimes it could play very long till I enable random adaptation and sometimes it just crashes few seconds after start.

Reproduction steps

  1. Added stream with DRM license to ExoPlayer demo “media.exolist.json” file,
  2. Run the app,
  3. Play stream

Link to test content

stream with DRM license provided by mail

Version of ExoPlayer being used

r2.5.2

Device(s) and version(s) of Android being used

Samsung SM-T585 Android: 7.0 Build number: NRD90M.T585XXU2BQE4

A full bug report captured from the device

In all tests 2 warnings and one error repeats:

09-11 15:10:59.915 8997-9141/com.google.android.exoplayer2.demo W/AHierarchicalStateMachine: 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.

09-11 15:11:00.740 2432-2462/? E/OMXNodeInstance: setParameter(980003c:Exynos.avc.dec.secure, ParamPortDefinition(0x2000001)) ERROR: BadParameter(0x80001005)

09-11 15:11:00.740 8997-9141/com.google.android.exoplayer2.demo W/ACodec: [OMX.Exynos.avc.dec.secure] setting nBufferCountActual to 27 failed: -2147483648

Full Log (additional two provided by email).

09-11 15:10:56.113 8997-9128/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:10:56.118 8997-9128/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:10:56.224 8997-8997/com.google.android.exoplayer2.demo D/EventLogger: sourceInfo [periodCount=1, windowCount=1
09-11 15:10:56.224 8997-8997/com.google.android.exoplayer2.demo D/EventLogger:   period [?]
09-11 15:10:56.225 8997-8997/com.google.android.exoplayer2.demo D/EventLogger:   window [23.99, true, true]
09-11 15:10:56.225 8997-8997/com.google.android.exoplayer2.demo D/EventLogger: ]
09-11 15:10:56.342 2849-2849/? D/WifiTrafficPoller: notifyOnDataActivity() - mBusMaxLock.acquire()
09-11 15:10:57.116 8997-9128/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:10:57.117 8997-9128/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:10:57.122 2849-3095/? D/wifi: onLinkStatsResults: radio_stat.on_time = 410441
09-11 15:10:57.123 2849-3095/? D/wifi: onLinkStatsResults: radio_stat.tx_time = 2027
09-11 15:10:57.123 2849-3095/? D/wifi: onLinkStatsResults: radio_stat.rx_time = 5570
09-11 15:10:57.123 2849-3095/? D/wifi: android_net_wifi_getLinkLayerStats: radio_stat.on_time = 410441
09-11 15:10:57.123 2849-3095/? D/wifi: android_net_wifi_getLinkLayerStats: radio_stat.tx_time = 2027
09-11 15:10:57.123 2849-3095/? D/wifi: android_net_wifi_getLinkLayerStats: radio_stat.rx_time = 5570
09-11 15:10:57.131 2849-3095/? D/WifiStateMachine: Current network is: "AndroidOKE" , ID is: 9
09-11 15:10:57.131 2849-3095/? D/WifiStateMachine: Current network is still qualified due to heavy traffic, txSuccessRate=91.66491714144291 rxSuccessRate=0.0
09-11 15:10:57.131 2849-3095/? D/WifiStateMachine: Heavy traffic on current network (txSuccessRate=91.66491714144291 rxSuccessRate=0.0), bail out...
09-11 15:10:57.210 8997-8997/com.google.android.exoplayer2.demo D/EventLogger: sourceInfo [periodCount=1, windowCount=1
09-11 15:10:57.210 8997-8997/com.google.android.exoplayer2.demo D/EventLogger:   period [?]
09-11 15:10:57.210 8997-8997/com.google.android.exoplayer2.demo D/EventLogger:   window [23.98, true, true]
09-11 15:10:57.210 8997-8997/com.google.android.exoplayer2.demo D/EventLogger: ]
09-11 15:10:57.211 8997-9136/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:10:57.212 8997-9135/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:10:57.216 8997-9135/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:10:57.217 8997-9136/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:10:57.344 2849-2849/? D/WifiTrafficPoller: notifyOnDataActivity() - mBusMaxLock.acquire()
09-11 15:10:57.678 3714-3714/? D/io_stats: !@ 179,0 r 33657 2011770 w 6264 110868 d 775 25432 f 2372 2373 iot 23510 22203 th 51200 0 0 pt 0 inp 0 0 541.372
09-11 15:10:58.346 2849-2849/? D/WifiTrafficPoller: notifyOnDataActivity() - mBusMaxLock.acquire()
09-11 15:10:59.348 2849-2849/? D/WifiTrafficPoller: notifyOnDataActivity() - mBusMaxLock.acquire()
09-11 15:10:59.710 8997-8997/com.google.android.exoplayer2.demo D/EventLogger: videoFormatChanged [22.92, id=p0va0br1800000, mimeType=video/avc, bitrate=1800000, res=704x396, fps=25.0]
09-11 15:10:59.914 2432-9142/? I/EXYNOS_BASE_PORT: [0xec999000][Exynos_OMX_PortDisableProcess] Before disabling output port, do flush
09-11 15:10:59.914 8997-9141/com.google.android.exoplayer2.demo I/ACodec: [OMX.Exynos.avc.dec.secure] Now handling output port settings change
09-11 15:10:59.914 2432-9145/? W/libexynosv4l2: failed to ioctl: VIDIOC_DQBUF (22 - Invalid argument)
09-11 15:10:59.915 8997-9141/com.google.android.exoplayer2.demo W/AHierarchicalStateMachine: 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.
09-11 15:10:59.918 2432-9142/? I/EXYNOS_BASE_PORT: [0xec999000][Exynos_OMX_PortDisableProcess] Disable output Port
09-11 15:10:59.999 2849-3029/? D/SamsungAlarmManager: Expired : 8
09-11 15:11:00.000 2849-3029/? I/SamsungAlarmManager: setLocked to kernel - T:3 / 20170911T151143, SetElapsed=587474, nowELAPSED=543696
09-11 15:11:00.000 2849-3029/? V/SamsungAlarmManager: Sending to uid : 1000 action=android.intent.action.TIME_TICK alarm=Alarm{6643291 type 3 when 543696 android}
09-11 15:11:00.002 2849-2849/? D/SamsungAlarmManager: setExact Intent (T:3/F:1/AC:false) 20170911T151200 - CU:1000/CP:2849
09-11 15:11:00.003 3226-3226/? D/KeyguardUpdateMonitor: received broadcast android.intent.action.TIME_TICK
09-11 15:11:00.004 3226-3226/? D/KeyguardUpdateMonitor: handleTimeUpdate#start
09-11 15:11:00.005 2849-2849/? I/ActivityManager: Killing 8839:com.samsung.android.bbc.bbcagent/1000 (adj 906): DHA:empty #25
09-11 15:11:00.016 3226-3226/? D/KeyguardUpdateMonitor: handleTimeUpdate#end
09-11 15:11:00.016 3226-3226/? D/SystemUI_Clock: Clock received ACTION_TIME_TICK : start
09-11 15:11:00.017 3226-3226/? D/SystemUI_Clock: Clock received ACTION_TIME_TICK : end
09-11 15:11:00.023 2849-3100/? D/ActivityManager: cleanUpApplicationRecord -- 8839
09-11 15:11:00.030 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : start
09-11 15:11:00.030 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : end
09-11 15:11:00.032 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : start
09-11 15:11:00.034 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : end
09-11 15:11:00.048 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : start
09-11 15:11:00.049 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : end
09-11 15:11:00.052 3226-3226/? D/SystemUI_DateView: DateView received ACTION_TIME_TICK : start
09-11 15:11:00.053 3226-3226/? D/SystemUI_DateView: DateView received ACTION_TIME_TICK : end
09-11 15:11:00.055 3226-3226/? D/SystemUI_Clock: Clock received ACTION_TIME_TICK : start
09-11 15:11:00.058 3226-3226/? D/SystemUI_Clock: Clock received ACTION_TIME_TICK : end
09-11 15:11:00.065 3226-3226/? D/DateTimeView: DateTimeView received ACTION_TIME_TICK : start
09-11 15:11:00.085 3226-3226/? D/DateTimeView: DateTimeView received ACTION_TIME_TICK : end
09-11 15:11:00.093 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : start
09-11 15:11:00.094 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : end
09-11 15:11:00.094 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : start
09-11 15:11:00.095 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : end
09-11 15:11:00.098 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : start
09-11 15:11:00.099 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : end
09-11 15:11:00.100 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : start
09-11 15:11:00.100 3226-3226/? D/TextClock: TextClock received ACTION_TIME_TICK : end
09-11 15:11:00.135 2849-3095/? D/wifi: onLinkStatsResults: radio_stat.on_time = 413105
09-11 15:11:00.135 2849-3095/? D/wifi: onLinkStatsResults: radio_stat.tx_time = 2039
09-11 15:11:00.135 2849-3095/? D/wifi: onLinkStatsResults: radio_stat.rx_time = 5681
09-11 15:11:00.135 2849-3095/? D/wifi: android_net_wifi_getLinkLayerStats: radio_stat.on_time = 413105
09-11 15:11:00.135 2849-3095/? D/wifi: android_net_wifi_getLinkLayerStats: radio_stat.tx_time = 2039
09-11 15:11:00.135 2849-3095/? D/wifi: android_net_wifi_getLinkLayerStats: radio_stat.rx_time = 5681
09-11 15:11:00.138 2849-3095/? D/WifiStateMachine: Current network is: "AndroidOKE" , ID is: 9
09-11 15:11:00.138 2849-3095/? D/WifiStateMachine: Current network is still qualified due to heavy traffic, txSuccessRate=129.33245857072146 rxSuccessRate=0.0
09-11 15:11:00.139 2849-3095/? D/WifiStateMachine: Heavy traffic on current network (txSuccessRate=129.33245857072146 rxSuccessRate=0.0), bail out...
09-11 15:11:00.248 8997-9128/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:11:00.248 8997-9128/com.google.android.exoplayer2.demo I/System.out: (HTTPLog)-Static: isSBSettingEnabled false
09-11 15:11:00.349 2849-2849/? D/WifiTrafficPoller: notifyOnDataActivity() - mBusMaxLock.acquire()
09-11 15:11:00.739 2432-9142/? I/EXYNOS_BASE_PORT: [0xec999000][Exynos_OMX_PortEnableProcess] Enable output Port
09-11 15:11:00.740 8997-9141/com.google.android.exoplayer2.demo D/SurfaceUtils: set up nativeWindow 0xeeee0808 for 704x400, color 0x123, rotation 0, usage 0x6900
09-11 15:11:00.740 2432-2462/? E/OMXNodeInstance: setParameter(980003c:Exynos.avc.dec.secure, ParamPortDefinition(0x2000001)) ERROR: BadParameter(0x80001005)
09-11 15:11:00.740 8997-9141/com.google.android.exoplayer2.demo W/ACodec: [OMX.Exynos.avc.dec.secure] setting nBufferCountActual to 27 failed: -2147483648
09-11 15:11:00.741 8997-9141/com.google.android.exoplayer2.demo I/ACodec: [OMX.Exynos.avc.dec.secure] configureOutputBuffersFromNativeWindow setBufferCount : 26, minUndequeuedBuffers : 3
09-11 15:11:00.756 8997-9141/com.google.android.exoplayer2.demo I/ACodec: [OMX.Exynos.avc.dec.secure] Now Executing
09-11 15:11:01.351 2849-2849/? D/WifiTrafficPoller: notifyOnDataActivity() - mBusMaxLock.acquire()
09-11 15:11:01.400 2849-3020/? D/SensorService: [SO] 8.742 0.049 3.779
09-11 15:11:01.576 2423-2504/? I/AudioFlinger: BUFFER TIMEOUT: remove(4096) from active list on thread 0xee3831c0
09-11 15:11:01.576 2423-2504/? I/SoundBoosterEffectPlus: SB_reset SoundBooster sessionId(-3)
09-11 15:11:01.576 2423-2504/? I/SoundBooster7: BuffClear()
09-11 15:11:01.591 2423-2475/? I/APM_AudioPolicyManager: stopOutput() output 13, stream 3, session 129
09-11 15:11:02.353 2849-2849/? D/WifiTrafficPoller: notifyOnDataActivity() - mBusMaxLock.acquire()
09-11 15:11:02.682 3714-3714/? D/io_stats: !@ 179,0 r 33657 2011770 w 6282 111720 d 776 25436 f 2373 2374 iot 23520 22222 th 51200 0 0 pt 0 inp 0 0 546.378
09-11 15:11:03.127 2849-2859/? D/BatteryService: !@BatteryListener : batteryPropertiesChanged!
09-11 15:11:03.127 2849-2859/? D/BatteryService: level:86, scale:100, status:2, health:2, present:true, voltage: 4046, temperature: 301, technology: Li-ion, AC powered:false, USB powered:true, POGO powered:false, Wireless powered:false, icon:17303702, invalid charger:0, maxChargingCurrent:0, maxChargingVoltage:0, chargeCounter:0
09-11 15:11:03.127 2849-2859/? D/BatteryService: online:4, current avg:-334, charge type:2, power sharing:false, high voltage charger:false, capacity:280000, batterySWSelfDischarging:false, misc_event:0, current_event:0, current_now:-335
09-11 15:11:03.127 2849-2849/? D/BatteryService: Sending ACTION_BATTERY_CHANGED.
09-11 15:11:03.129 3226-3226/? D/KeyguardUpdateMonitor: received broadcast android.intent.action.BATTERY_CHANGED
09-11 15:11:03.129 3226-3226/? D/KeyguardUpdateMonitor: handleBatteryUpdate
09-11 15:11:03.131 2849-2849/? D/SamsungPhoneWindowManager: ACTION_BATTERY_CHANGED - Level :: 86, battStatus :: 2
09-11 15:11:03.131 2849-2849/? V/UiModeManager: updateLocked: null action, mDockState=0, category=null
09-11 15:11:03.132 2849-2849/? D/UiModeManager: updateConfigurationLocked: mDockState=0; mCarMode=false; mNightMode=1; uiMode=17
09-11 15:11:03.132 2849-2849/? D/GameManagerService: new battery level: 86
09-11 15:11:03.132 3226-3226/? D/PowerUI: showing power sharing dialogfalse
09-11 15:11:03.132 3226-3226/? D/PowerUI: priorPlugType = 2 mPlugType =  2
09-11 15:11:03.132 3226-3226/? D/PowerUI.Notification: showChargingNotice oldChargingType : 5 currentChargingType : 5 oldChargingTime : 0 mChargingTime : 0
09-11 15:11:03.132 3226-3226/? D/PowerUI.Notification: Slow charger noti is already shown, so return!
09-11 15:11:03.133 3226-3226/? D/BatteryMeterDrawable: isSomethingChanged - false
09-11 15:11:03.134 3226-3226/? D/BatteryMeterDrawable: isSomethingChanged - false
09-11 15:11:03.134 3226-3226/? D/BatteryController: onReceive - ACTION_BATTERY_CHANGED : mLevel = 86
09-11 15:11:03.141 2849-3095/? D/wifi: onLinkStatsResults: radio_stat.on_time = 415867
09-11 15:11:03.141 2849-3095/? D/wifi: onLinkStatsResults: radio_stat.tx_time = 2052
09-11 15:11:03.141 2849-3095/? D/wifi: onLinkStatsResults: radio_stat.rx_time = 5749
09-11 15:11:03.141 2849-3095/? D/wifi: android_net_wifi_getLinkLayerStats: radio_stat.on_time = 415867
09-11 15:11:03.141 2849-3095/? D/wifi: android_net_wifi_getLinkLayerStats: radio_stat.tx_time = 2052
09-11 15:11:03.141 2849-3095/? D/wifi: android_net_wifi_getLinkLayerStats: radio_stat.rx_time = 5749
09-11 15:11:03.145 2849-3095/? D/WifiStateMachine: Current network is: "AndroidOKE" , ID is: 9
09-11 15:11:03.145 2849-3095/? D/WifiStateMachine: Current network is still qualified due to heavy traffic, txSuccessRate=105.66622928536073 rxSuccessRate=0.0
09-11 15:11:03.145 2849-3095/? D/WifiStateMachine: Heavy traffic on current network (txSuccessRate=105.66622928536073 rxSuccessRate=0.0), bail out...
09-11 15:11:03.354 2849-2849/? D/WifiTrafficPoller: notifyOnDataActivity() - mBusMaxLock.acquire()
09-11 15:11:04.101 2423-2504/? I/audio_hw_primary: do_out_standby +
09-11 15:11:04.106 2423-2504/? D/audio_hw_primary: output_devices devices:0
09-11 15:11:04.106 2423-2504/? D/audio_hw_primary: output_devices devices:0
09-11 15:11:04.106 2423-2504/? V/audio_hw_primary: select_devices output_scenario:-1 input_scenario:-1 out_snd_device 0x0 in_snd_device:0x0
09-11 15:11:04.106 2423-2504/? I/audio_route: > audio_route_reset :
09-11 15:11:04.106 2423-2504/? I/audio_route: > audio_route_update_mixer : +
09-11 15:11:04.109 2423-2504/? I/audio_route: > audio_route_update_mixer : changed(13) -
09-11 15:11:04.109 2423-2504/? I/audio_hw_primary: select_devices - 
09-11 15:11:04.109 2423-2504/? I/audio_hw_primary: do_out_standby -
09-11 15:11:04.333 2849-4455/? D/SSRM:m: SIOP:: AP = 350, PST = 351 (W:30), LCD = 180
09-11 15:11:04.355 2849-2849/? D/WifiTrafficPoller: notifyOnDataActivity() - mBusMaxLock.acquire()
01-01 00:00:00.000 0-0/? E/Internal: device '520364b5e861730f' not found

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 23 (12 by maintainers)

Commits related to this issue

Most upvoted comments

Something goes wrong in the decoder when adaptation occurs. I don’t have access to the decoder implementation, so it’s impossible to say exactly what’s broken. Queuing the blank frame likely forces the decoder to better reset its internal state.

Ah. I think SM-A5 might be overly broad (and may also include yet-to-be-released devices). I’ll add SM-510 explicitly for now.