app closes when playing video under android 6
we are getting bad reviews and and user complaints that attempting to play videos when running on android 6 causes the app to crash.
opening PDFs and audio files seems to be working well.
one user reporting this has lg g4 and another a galaxy s7 edge.
#4 Updated by cpg over 5 years ago
I do not know what your comment really implies. Does it now imply that this is only really possible to control at the moment via the APK?
I do not seem to find a way to control this from the developer console.
#6 Updated by cpg over 5 years ago
The app seems to compile fine and I can reproduce the not playing of video. There appears to be no crash (or at least the app just closes but it seems to be in the background).
After a few tries, I did notice this:
03-27 17:06:27.046 3821-3821/org.amahi.anywhere E/VLC/LibVLC: Can't load vlcjni library: java.lang.UnsatisfiedLinkError: dlopen failed: /data/app/org.amahi.anywhere-1/lib/x86/libvlcjni.so: has text relocations
So we need to recompile (and possibly update?) the libvlc, it seems?
#8 Updated by cpg over 5 years ago
- Assignee changed from cpg to megabitdragon
update: the lua errors are real and the new lua code went in two weeks ago. i added a comment at the end of the commit that added lua 5.3 hoping that maybe they can chime in.
the people in the lua community said the cross-compiler ar tool perhaps should be used?
how did you try to compile @megabitdragon? i was under mac os x. i assume you were on windows.
#10 Updated by cpg over 5 years ago
i was able to compile libvlc by changing --enable-lua to --disable-lua.
but i am not sure what i'm doing. i'm trying ./gradlew buildSdk next. maybe i can guess my way from there.
it failed and it asked me to run gradlew tasks, which appeared to succeed.
not sure what next ...
--- a/compile-libvlc.sh +++ b/compile-libvlc.sh @@ -70,7 +70,7 @@ VLC_BOOTSTRAP_ARGS="\ --disable-dca \ --disable-goom \ --disable-chromaprint \ - --enable-lua \ + --disable-lua \ --disable-schroedinger \ --disable-sdl \ --disable-SDL_image \ @@ -119,7 +119,7 @@ VLC_CONFIGURE_ARGS="\ --disable-update-check \ --disable-vlm \ --disable-dbus \ - --enable-lua \ + --disable-lua \ --disable-vcd \ --disable-v4l2 \ --disable-gnomevfs \
#11 Updated by cpg over 5 years ago
it does look like a number of symbols may have changed name. i used readelf from the toolchain to see if i would find some symbols, for instance pause
arm-linux-androideabi-readelf -Ws libvlc.so | grep -i pause 127: 0043eb41 64 FUNC GLOBAL DEFAULT 8 libvlc_media_list_player_pause 151: 0043c7cd 152 FUNC GLOBAL DEFAULT 8 libvlc_media_player_can_pause 179: 0043c865 208 FUNC GLOBAL DEFAULT 8 libvlc_media_player_set_pause 180: 0043c935 44 FUNC GLOBAL DEFAULT 8 libvlc_media_player_pause 276: 00434e2d 212 FUNC GLOBAL DEFAULT 8 libvlc_vlm_pause_media 1439: 005b81c9 14 FUNC GLOBAL DEFAULT 8 avio_pause 1704: 00991bfd 152 FUNC GLOBAL DEFAULT 8 _ZN10RTSPClient16sendPauseCommandER12MediaSessionPFvPS_iPcEP13Authenticator 10482: 0060bc8d 24 FUNC GLOBAL DEFAULT 8 av_read_pause 13709: 00991c95 152 FUNC GLOBAL DEFAULT 8 _ZN10RTSPClient16sendPauseCommandER15MediaSubsessionPFvPS_iPcEP13Authenticator 14746: 009a2111 88 FUNC GLOBAL DEFAULT 8 _ZN10RTSPServer17RTSPClientSession15handleCmd_PAUSEEPNS_20RTSPClientConnectionEP21ServerMediaSubsession 14825: 009a3e31 2 FUNC GLOBAL DEFAULT 8 _ZN21ServerMediaSubsession11pauseStreamEjPv 14966: 009aa25d 26 FUNC GLOBAL DEFAULT 8 _ZN29OnDemandServerMediaSubsession11pauseStreamEjPv 15376: 009aa23d 30 FUNC GLOBAL DEFAULT 8 _ZN11StreamState5pauseEv
#12 Updated by cpg over 5 years ago
current status (from bgm):
Information:Gradle tasks [:assembleDebug] :preBuild UP-TO-DATE :preDebugBuild UP-TO-DATE :checkDebugManifest :preBetaReleaseBuild UP-TO-DATE :preReleaseBuild UP-TO-DATE :prepareAmahiLibvlcUnspecifiedLibrary UP-TO-DATE :prepareComAndroidSupportSupportV132311Library UP-TO-DATE :prepareComAndroidSupportSupportV42311Library UP-TO-DATE :prepareComGithubDmytrodanylykAndroidProcessButtonLibrary103Library UP-TO-DATE :prepareDebugDependencies :compileDebugAidl UP-TO-DATE :compileDebugRenderscript UP-TO-DATE :generateDebugBuildConfig UP-TO-DATE :generateDebugAssets UP-TO-DATE :mergeDebugAssets UP-TO-DATE :processDebugManifest UP-TO-DATE :crashlyticsCleanupResourcesDebug :crashlyticsUploadStoredDeobsDebug :crashlyticsGenerateResourcesDebug :generateDebugResValues UP-TO-DATE :generateDebugResources UP-TO-DATE :mergeDebugResources :processDebugResources :generateDebugSources :processDebugJavaRes UP-TO-DATE :compileDebugJavaWithJavac /home/bodi/android/workspace/amahi/src/main/java/org/amahi/anywhere/service/VideoService.java Error:(38, 27) error: cannot find symbol class EventHandler Error:(39, 27) error: cannot find symbol class IVideoPlayer Error:(41, 27) error: cannot find symbol class LibVlcException Error:(48, 54) error: cannot find symbol class IVideoPlayer Error:(38, 27) error: cannot find symbol class EventHandler Error:(39, 27) error: cannot find symbol class IVideoPlayer Error:(41, 27) error: cannot find symbol class LibVlcException Error:(48, 54) error: cannot find symbol class IVideoPlayer Error:(85, 24) error: cannot find symbol method getInstance() Error:(86, 15) error: cannot find symbol method init(VideoService) Error:(89, 12) error: cannot find symbol class LibVlcException Error:(109, 3) error: cannot find symbol variable EventHandler Error:(113, 14) error: cannot find symbol method playMRL(String) Error:(131, 14) error: cannot find symbol method play() Error:(137, 14) error: cannot find symbol method pause() Error:(142, 2) error: method does not override or implement a method from a supertype Error:(164, 3) error: cannot find symbol variable EventHandler Error:(168, 14) error: cannot find symbol method stop() Error:(169, 14) error: cannot find symbol method destroy() Error:(196, 10) error: cannot find symbol variable EventHandler Error:(200, 10) error: cannot find symbol variable EventHandler /home/bodi/android/workspace/amahi/src/main/java/org/amahi/anywhere/activity/ServerFileVideoActivity.java Error:(253, 32) error: cannot find symbol method attachSurface(Surface,VideoService) Error:(258, 32) error: cannot find symbol method detachSurface() Error:(328, 32) error: cannot find symbol method setTime(int) Error:(333, 45) error: cannot find symbol method getLength() Error:(338, 45) error: cannot find symbol method getTime() Error:(460, 32) error: cannot find symbol method stop() Note: Some input files use or override a deprecated API. Note: Recompile with -Xlint:deprecation for details. Error:Execution failed for task ':compileDebugJavaWithJavac'. > Compilation failed; see the compiler error output for details. Information:BUILD FAILED Information:Total time: 6.312 secs Information:28 errors Information:0 warnings Information:See complete output in console
not sure where @ming got the details in the documentation to find out the calls to libvlc.
#14 Updated by cpg about 5 years ago
- Status changed from Assigned to Feedback
- Assignee changed from Anonymous to megabitdragon
I finally got myself a little more ready for working on this and I upgraded my dev phone to android 6.0.1 (stock from the carrier, not Cyanogen or something else).
Installed Amahi after the upgrade and I could play .avi files, .mkv files as well as .mp4 files, without much of a hint of a problem.
Now I'm wondering where is the disconnect here. Ideas?
Also available in: Atom