RenderHeads / UnityPlugin-AVProMovieCapture

AVPro Movie Capture is a Unity Plugin for advanced video capture to AVI/MP4/MOV files
https://renderheads.com/products/avpro-movie-capture/
43 stars 8 forks source link

[Bug] so Load error on some android devices #369

Closed fanghuaiyi closed 4 months ago

fanghuaiyi commented 4 months ago

Unity Version

2018.4.35f1

AVPro Movie Capture Version

5.2.0 mobile

Which platform(s) are you using?

iOS, Android

Which OS version(s) are you using?

No response

Which rendering API(s) are you using?

No response

Hardware

No response

Which capture component are you using?

Capture From Camera

Capture mode

Realtime

Which output mode are you using?

Video file

Video codecs

H264

Audio source

Microphone

Audio codecs

AAC

Any other component configuration

No response

The issue

We are using version 5.2.0 mobile, and we received some errors related to the loading of 'so' files. Could you please help investigate the cause? Thank you very much! image

Log output

18502-20 15:46:56.849 12185 12238 W Unity : stack traceback:
18602-20 15:46:56.849 12185 12238 W Unity : Assets/Lua/sys/Functions.lua:14: in function 'warn'
18702-20 15:46:56.849 12185 12238 W Unity : Assets/Lua/model/UserHouseModel.lua:1409: in function <Assets/Lua/model/UserHouseModel.lua:1405>
18802-20 15:46:56.849 12185 12238 W Unity : Debugger:LogWarning(String, Object[])
18902-20 15:46:56.849 12185 12238 W Unity : DebuggerWrap:LogWarning(IntPtr)
19002-20 15:46:56.849 12185 12238 W Unity :
19102-20 15:46:56.849 12185 12238 W Unity : (Filename: ./Runtime/Export/Debug.bindings.h Line: 45)
19202-20 15:46:56.849 12185 12238 W Unity :
19302-20 15:46:56.914 12185 12238 W Unity : 2024-02-20 15:46:56 warning PlayHouseSfxui_hall_qixi_amb_firework_fairy_wand_burning_sizzle_lp
19402-20 15:46:56.914 12185 12238 W Unity : stack traceback:
19502-20 15:46:56.914 12185 12238 W Unity : Assets/Lua/sys/Functions.lua:14: in function 'warn'
19602-20 15:46:56.914 12185 12238 W Unity : Assets/Lua/model/UserHouseModel.lua:1409: in function <Assets/Lua/model/UserHouseModel.lua:1405>
19702-20 15:46:56.914 12185 12238 W Unity : Debugger:LogWarning(String, Object[])
19802-20 15:46:56.914 12185 12238 W Unity : DebuggerWrap:LogWarning(IntPtr)
19902-20 15:46:56.914 12185 12238 W Unity :
20002-20 15:46:56.914 12185 12238 W Unity : (Filename: ./Runtime/Export/Debug.bindings.h Line: 45)
20102-20 15:46:56.914 12185 12238 W Unity :
20202-20 15:46:59.995 12185 12238 W linker : /data/app/com.tencent.tmgp.lv-2/lib/arm64/libAVProMovieCaptureNative.so: unused DT entry: type 0x6ffffef5 arg 0x18a8
20302-20 15:46:59.995 12185 12238 W linker : /data/app/com.tencent.tmgp.lv-2/lib/arm64/libAVProMovieCaptureNative.so: unused DT entry: type 0x6ffffffe arg 0x1868
20402-20 15:46:59.995 12185 12238 W linker : /data/app/com.tencent.tmgp.lv-2/lib/arm64/libAVProMovieCaptureNative.so: unused DT entry: type 0x6fffffff arg 0x2
20502-20 15:46:59.995 12185 12238 E art : dlopen("/data/app/com.tencent.tmgp.lv-2/lib/arm64/libAVProMovieCaptureNative.so", RTLD_LAZY) failed: dlopen failed: empty/missing DT_HASH in "/data/app/com.tencent.tmgp.lv-2/lib/arm64/libAVProMovieCaptureNative.so" (built with --hash-style=gnu?)
20602-20 15:47:00.071 12185 12238 E Unity : AndroidJavaException: java.lang.UnsatisfiedLinkError: dlopen failed: empty/missing DT_HASH in "/data/app/com.tencent.tmgp.lv-2/lib/arm64/libAVProMovieCaptureNative.so" (built with --hash-style=gnu?)
20702-20 15:47:00.071 12185 12238 E Unity : java.lang.UnsatisfiedLinkError: dlopen failed: empty/missing DT_HASH in "/data/app/com.tencent.tmgp.lv-2/lib/arm64/libAVProMovieCaptureNative.so" (built with --hash-style=gnu?)
20802-20 15:47:00.071 12185 12238 E Unity : at java.lang.Runtime.loadLibrary(Runtime.java:372)
20902-20 15:47:00.071 12185 12238 E Unity : at java.lang.System.loadLibrary(System.java:988)
21002-20 15:47:00.071 12185 12238 E Unity : at com.renderheads.AVPro.MovieCapture.Manager.<clinit>(SourceFile)
21102-20 15:47:00.071 12185 12238 E Unity : at java.lang.Class.classForName(Native Method)
21202-20 15:47:00.071 12185 12238 E Unity : at java.lang.Class.forName(Class.java:309)
21302-20 15:47:00.071 12185 12238 E Unity : at java.lang.Class.forName(Class.java:273)
21402-20 15:47:00.071 12185 12238 E Unity : at com.unity3d.player.UnityPlayer.nativeRender(Native Method)
21502-20 15:47:00.071 12185 12238 E Unity : at com.unity3d.player.UnityPlayer.c(Unknown Source)
21602-20 15:47:00.071 12185 12238 E Unity : at com.unity3d.player.UnityPlayer$e$1.handleMessage(Unknown Source)
21702-20 15:47:00.071 12185 12238 E Unity : at android.os.Handler.dispatchMessage(Handler.java:107)
21802-20 15:47:00.071 12185 12238 E Unity : at android.os.Looper.loop(Looper.java:224)
21902-20 15:47:00.071 12185 12238 E Unity : at com.unity3d.player.UnityPlayer$e.run(Unknown Source
Chris-RH commented 4 months ago
  1. What devices is this occurring on (model and OS version)
  2. What devices is this NOT occurring on (model and OS version)
  3. Can you reproduce this in a new project using only AVPro Movie Capture?
  4. Have you tried --hash-style=both (https://android.googlesource.com/platform/bionic/+/master/android-changes-for-ndk-developers.md#gnu-hashes-availible-in-api-level-23)
MorrisRH commented 4 months ago

It looks like these devices are running Android 5.1, AVPro Movie Capture requires at least Android 8.0