google / ExoPlayer

This project is deprecated and stale. The latest ExoPlayer code is available in https://github.com/androidx/media
https://developer.android.com/media/media3/exoplayer
Apache License 2.0
21.7k stars 6.02k forks source link

A/libc: invalid address or address of corrupt block 0x48664680 passed to dlfree #5609

Closed zhouxuemeng1988 closed 5 years ago

zhouxuemeng1988 commented 5 years ago
03-07 17:46:39.456 19234-543/com.gochinatv.ad.debug D/dalvikvm: GC_FOR_ALLOC freed 2022K, 8% free 61810K/67144K, paused 114ms, total 114ms
03-07 17:46:39.456 19234-1362/com.gochinatv.ad.debug A/libc: invalid address or address of corrupt block 0x4dd6d6c0 passed to dlfree
03-07 17:46:47.544 19234-19239/com.gochinatv.ad.debug I/dalvikvm: threadid=3: reacting to signal 3
03-07 17:46:48.545 19234-19239/com.gochinatv.ad.debug W/dalvikvm: threadid=3: spin on suspend #1 threadid=20 (pcf=0)
03-07 17:46:49.295 19234-19239/com.gochinatv.ad.debug W/dalvikvm: threadid=3: spin on suspend #2 threadid=20 (pcf=0)

Issue description I play youtube dash with exoplayer---v2.9.5。It can play normally at first, but after playing for a while, the application will get stuck without any reaction. But there is no pop window for ANR.

Reproduction steps Play dash for a long time

Link to test content https://testweex.oss-cn-hangzhou.aliyuncs.com/test/youtube_8dd55d4c41ea772c9b9d9254e2198e4b.mpd

A full bug report captured from the device Sbox8G40C Android 4.4.2,level 19 ROM:HiSTBAndroidV5/Hi3798MV100 CPU:armeabi-v7a

Version of ExoPlayer being used 2.9.5

[REQUIRED] Device(s) and version(s) of Android being used

Sbox8G40C Android 4.4.2,level 19 ROM:HiSTBAndroidV5/Hi3798MV100 CPU:armeabi-v7a

google-oss-bot commented 5 years ago

This issue does not seem to follow the issue template. Make sure you provide all the required information.

zhaoqigang commented 5 years ago

I meet this issue too. A/libc: invalid address or address of corrupt block 0x529d2470 passed to dlf

zhouxuemeng1988 commented 5 years ago

I user exoplayer demo 2.9.6, and set playmode to Player.REPEAT_MODE_ALL,then i click YouTube Dash-->Google Glass (MP4,H264) ,then it play failed. Code and log are as follows. ` player = ExoPlayerFactory.newSimpleInstance( / context= / this, renderersFactory, trackSelector, drmSessionManager); player.addListener(new PlayerEventListener()); player.setPlayWhenReady(startAutoPlay); player.setRepeatMode(Player.REPEAT_MODE_ALL); player.addAnalyticsListener(new EventLogger(trackSelector)); playerView.setPlayer(player); playerView.setPlaybackPreparer(this); debugViewHelper = new DebugTextViewHelper(player, debugTextView); debugViewHelper.start(); MediaSource[] mediaSources = new MediaSource[uris.length]; for (int i = 0; i < uris.length; i++) { mediaSources[i] = buildMediaSource(uris[i], extensions[i]); } mediaSource = mediaSources.length == 1 ? mediaSources[0] : new ConcatenatingMediaSource(mediaSources);

boolean haveStartPosition = startWindow != C.INDEX_UNSET; if (haveStartPosition) { player.seekTo(startWindow, startPosition); } player.prepare(mediaSource, !haveStartPosition, false); updateButtonVisibilities(); `

log:

03-08 10:12:22.189 26497-26834/com.google.android.exoplayer2.demo A/libc: invalid address or address of corrupt block 0x4b0b24c0 passed to dlfree 03-08 10:12:22.189 26497-26834/com.google.android.exoplayer2.demo A/libc: Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1), thread 26834 (Loader:ChunkSam)

exoplaydemo.log

ojw28 commented 5 years ago

I think this particular device has stability issues in the underlying platform implementation. Let's use https://github.com/google/ExoPlayer/issues/5606 to track this, rather than keeping two issues open.