-
Notifications
You must be signed in to change notification settings - Fork 509
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
android5.0-6.0播放视频时有几率崩溃 #38
Comments
这里MediaExtractor低版本确实有兼容问题,这个我想办法解决。这里你先检查一下,有没有校验文件的md5,遇到很多问题是上传服务器后,mp4被服务器修改导致文件有问题。我们的vap工具输出的时候有原始的md5,不要用服务器的hash进行校验。或者你升级到2.0.11试试,看看能不能避免这个问题。 |
使用的动效视频是本地资源,而且日志上看是一开始是播放正常的,但是播放多几次就出问题了(同一个View) |
素材是h264的还是h265的 |
h264的 |
你用的是哪个版本?我这代码行数对不上 |
先记录下当前结论: 这里应该MediaExtractor的兼容问题,目前想到的解决方法是手动实现mp4封装,但工作量比较大,手动实现mp4解封装需要充分测试 |
对应2.0.9的HardDecoder的228 |
荣耀 BND AL10 Android 8.0.0,level 26,VAP V2.0.13 遇到了同样的问题。出错堆栈:1 #00 pc 0004b97c /system/lib/libc.so (tgkill+12) [armeabi-v7a] |
是使用asset的方式播放的问题,使用File的方式播放就好了 |
5.0-6.0都有出现:
1 #00 pc 0003bb3c /system/lib/libc.so (tgkill+12) [armeabi-v7a]
2 #1 pc 000177f9 /system/lib/libc.so (pthread_kill+52) [armeabi-v7a]
3 #2 pc 00018403 /system/lib/libc.so (raise+10) [armeabi-v7a]
4 #3 pc 00014c37 /system/lib/libc.so (__libc_android_abort+34) [armeabi-v7a]
5 #4 pc 00013020 /system/lib/libc.so (abort+4) [armeabi-v7a]
6 #5 pc 00008595 /system/lib/libcutils.so (__android_log_assert+88) [armeabi-v8]
7 #6 pc 000d248d /system/lib/libstagefright.so (android::NuMediaExtractor::selectTrack(unsigned int)+296) [armeabi-v8]
8 #7 pc 0001d835 /system/lib/libmedia_jni.so [armeabi-v8]
9 #8 pc 001167d3 /data/dalvik-cache/arm/system@framework@boot.oat [armeabi]
10 java:
11 com.tencent.qgame.animplayer.HardDecoder.void startPlay(com.tencent.qgame.animplayer.FileContainer)(SourceFile:9106)
12 ##parent##1##parent##
13 ##child## void access$startPlay(com.tencent.qgame.animplayer.HardDecoder,com.tencent.qgame.animplayer.FileContainer)##child##
14 com.tencent.qgame.animplayer.HardDecoder$start$1.void run()(SourceFile:62)
15 android.os.Handler.handleCallback(Handler.java:815)
16 android.os.Handler.dispatchMessage(Handler.java:104)
17 android.os.Looper.loop(Looper.java:192)
18 android.os.HandlerThread.run(HandlerThread.java:61)
只在5.1.1出现的:
1 #00 pc 00095640 /system/lib/libstagefright.so (android::NuMediaExtractor::~NuMediaExtractor()+59) [armeabi-v7a]
2 #1 pc 000956d9 /system/lib/libstagefright.so (android::NuMediaExtractor::~NuMediaExtractor()+4) [armeabi-v7a]
3 #2 pc 0000d68d /system/lib/libutils.so (android::RefBase::decStrong(void const*) const+40) [armeabi-v7a]
4 #3 pc 0001a64f /system/lib/libmedia_jni.so (android::JMediaExtractor::~JMediaExtractor()+58) [armeabi-v7a]
5 #4 pc 0001a669 /system/lib/libmedia_jni.so (android::JMediaExtractor::~JMediaExtractor()+4) [armeabi-v7a]
6 #5 pc 0000d68d /system/lib/libutils.so (android::RefBase::decStrong(void const*) const+40) [armeabi-v7a]
7 #6 pc 00014c43 /system/lib/libmedia_jni.so (android::spandroid::JCrypto::~sp()+10) [armeabi-v7a]
8 #7 pc 0001af11 /system/lib/libmedia_jni.so [armeabi-v7a]
9 #8 pc 000003df /system/framework/arm/boot.oat [armeabi]
10 java:
11 com.tencent.qgame.animplayer.HardDecoder$release$1.void run()(SourceFile:273)
12 android.os.Handler.handleCallback(Handler.java:739)
13 android.os.Handler.dispatchMessage(Handler.java:95)
14 android.os.Looper.loop(Looper.java:135)
15 android.os.HandlerThread.run(HandlerThread.java:61)
其中5.1.1的那个从日志中看是在selectVideoTrack返回小于0去进行释放工作导致的
总的看起来崩溃都是和selectVideoTrack相关
The text was updated successfully, but these errors were encountered: