homuler / MediaPipeUnityPlugin

Unity plugin to run MediaPipe
MIT License
1.72k stars 449 forks source link

Memory leak issue in Editor and in built applications #1027

Open shanemccartney opened 10 months ago

shanemccartney commented 10 months ago

Plugin Version or Commit ID

v0.12.0

Unity Version

2022.3.9f1

Your Host OS

MacOs

Target Platform

UnityEditor, Mac Standalone

Target Device

Macbook Pro

[Windows Only] Visual Studio C++ and Windows SDK Version

No response

[Linux Only] GCC/G++ and GLIBC Version

No response

[Android Only] Android Build Tools and NDK Version

No response

[iOS Only] XCode Version

No response

Build Command

python3 build.py build --desktop cpu -vv

Bug Description

Open any of the sample scenes and profile memory use in Unity. Native Reserved Memory constantly allocates until all memory is used and never goes down during play. Stopping play and resuming also does not clear memory the same memory leak issue also occurs in an app built for macOS

Steps to Reproduce the Bug

Open any of the sample scenes and profile memory use in Unity to see constant memory increase.

Log

Asset Pipeline Refresh (id=eacc3623ce8684c2e93a7d9c91da8161): Total: 0.097 seconds - Initiated by RefreshV2(AllowForceSynchronousImport) Thread 0x2e83ab000 may have been prematurely finalized Asset Pipeline Refresh (id=be4a2ee466441459d9e9f2d4d3cdf142): Total: 0.104 seconds - Initiated by RefreshV2(NoUpdateAssetOptions) SpriteAtlasPacking completed in 0.106406 sec Reloading assemblies for play mode. Reloading assemblies after forced synchronous recompile. Attempted to call .Dispose on an already disposed CancellationTokenSource Begin MonoManager ReloadAssembly

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs Line: 101)

The configuration for the sample app can be modified using AppSettings.asset. UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.Sample.Bootstrap/d11:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:27) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.Bootstrap:OnEnable () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:22) UnityEngine.Object:Instantiate (UnityEngine.GameObject) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/UnityEngineObject.bindings.cs:285) Mediapipe.Unity.Sample.Solution:FindBootstrap () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:102) Mediapipe.Unity.Sample.Solution/d9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:28) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs Line: 27)

Setting global flags... UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.Sample.Bootstrap/d11:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:36) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.Bootstrap:OnEnable () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:22) UnityEngine.Object:Instantiate (UnityEngine.GameObject) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/UnityEngineObject.bindings.cs:285) Mediapipe.Unity.Sample.Solution:FindBootstrap () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:102) Mediapipe.Unity.Sample.Solution/d9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:28) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs Line: 36)

Initializing AssetLoader... UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.Sample.Bootstrap/d11:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:41) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.Bootstrap:OnEnable () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:22) UnityEngine.Object:Instantiate (UnityEngine.GameObject) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/UnityEngineObject.bindings.cs:285) Mediapipe.Unity.Sample.Solution:FindBootstrap () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:102) Mediapipe.Unity.Sample.Solution/d9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:28) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs Line: 41)

Current platform does not support GPU inference mode, so falling back to CPU mode UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:LogWarning (object) Mediapipe.Unity.Sample.Bootstrap:DecideInferenceMode () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:96) Mediapipe.Unity.Sample.Bootstrap/d11:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:72) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.Bootstrap:OnEnable () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:22) UnityEngine.Object:Instantiate (UnityEngine.GameObject) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/UnityEngineObject.bindings.cs:285) Mediapipe.Unity.Sample.Solution:FindBootstrap () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:102) Mediapipe.Unity.Sample.Solution/d9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:28) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs Line: 96)

Preparing ImageSource... UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.Sample.Bootstrap/d11:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:84) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.Bootstrap:OnEnable () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs:22) UnityEngine.Object:Instantiate (UnityEngine.GameObject) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/UnityEngineObject.bindings.cs:285) Mediapipe.Unity.Sample.Solution:FindBootstrap () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:102) Mediapipe.Unity.Sample.Solution/d9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:28) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/Bootstrap.cs Line: 84)

Config Type = CPU UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.Sample.GraphRunner/d39:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:116) Mediapipe.Unity.WaitForResult/d20:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:51) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.WaitForResult:.ctor (UnityEngine.MonoBehaviour,System.Collections.IEnumerator,long) (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:34) Mediapipe.Unity.Sample.GraphRunner:WaitForInit (Mediapipe.Unity.RunningMode) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:109) Mediapipe.Unity.Sample.ImageSourceSolution1/<Run>d__12<Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph>:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:60) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.ImageSourceSolution1:Play () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:35) Mediapipe.Unity.Sample.Solution/d__9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:31) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs Line: 116)

Running Mode = Async UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.Sample.GraphRunner/d39:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:117) Mediapipe.Unity.WaitForResult/d20:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:51) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.WaitForResult:.ctor (UnityEngine.MonoBehaviour,System.Collections.IEnumerator,long) (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:34) Mediapipe.Unity.Sample.GraphRunner:WaitForInit (Mediapipe.Unity.RunningMode) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:109) Mediapipe.Unity.Sample.ImageSourceSolution1/<Run>d__12<Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph>:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:60) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.ImageSourceSolution1:Play () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:35) Mediapipe.Unity.Sample.Solution/d__9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:31) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs Line: 117)

Min Detection Confidence (FaceDetectionShortRangeCpu) = 0.5 UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph:ConfigureCalculatorGraph (Mediapipe.CalculatorGraphConfig) (at Assets/MediaPipeUnity/Samples/Scenes/Face Detection/FaceDetectionGraph.cs:92) Mediapipe.Unity.Sample.GraphRunner:InitializeCalculatorGraph () (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:239) Mediapipe.Unity.Sample.GraphRunner/d39:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:119) Mediapipe.Unity.WaitForResult/d20:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:51) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.WaitForResult:.ctor (UnityEngine.MonoBehaviour,System.Collections.IEnumerator,long) (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:34) Mediapipe.Unity.Sample.GraphRunner:WaitForInit (Mediapipe.Unity.RunningMode) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:109) Mediapipe.Unity.Sample.ImageSourceSolution1/<Run>d__12<Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph>:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:60) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.ImageSourceSolution1:Play () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:35) Mediapipe.Unity.Sample.Solution/d__9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:31) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Scenes/Face Detection/FaceDetectionGraph.cs Line: 92)

Min Detection Confidence (FaceDetectionFullRangeCpu) = 0.5 UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph:ConfigureCalculatorGraph (Mediapipe.CalculatorGraphConfig) (at Assets/MediaPipeUnity/Samples/Scenes/Face Detection/FaceDetectionGraph.cs:92) Mediapipe.Unity.Sample.GraphRunner:InitializeCalculatorGraph () (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:239) Mediapipe.Unity.Sample.GraphRunner/d39:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:119) Mediapipe.Unity.WaitForResult/d20:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:51) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.WaitForResult:.ctor (UnityEngine.MonoBehaviour,System.Collections.IEnumerator,long) (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:34) Mediapipe.Unity.Sample.GraphRunner:WaitForInit (Mediapipe.Unity.RunningMode) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:109) Mediapipe.Unity.Sample.ImageSourceSolution1/<Run>d__12<Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph>:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:60) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.ImageSourceSolution1:Play () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:35) Mediapipe.Unity.Sample.Solution/d__9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:31) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Scenes/Face Detection/FaceDetectionGraph.cs Line: 92)

Loading dependent assets... UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.Sample.GraphRunner/d39:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:123) Mediapipe.Unity.WaitForResult/d20:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:51) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.WaitForResult:.ctor (UnityEngine.MonoBehaviour,System.Collections.IEnumerator,long) (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:34) Mediapipe.Unity.Sample.GraphRunner:WaitForInit (Mediapipe.Unity.RunningMode) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:109) Mediapipe.Unity.Sample.ImageSourceSolution1/<Run>d__12<Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph>:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:60) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.ImageSourceSolution1:Play () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:35) Mediapipe.Unity.Sample.Solution/d__9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:31) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs Line: 123)

LocalResourceManager: face_detection_short_range.bytes will not be copied to /Users/shanemccartney/Library/Application Support/DefaultCompany/MediaPipeUnityPlugin/face_detection_short_range.bytes because it already exists UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,string,object) Mediapipe.Unity.Logger/LoggerWrapper:Log (Mediapipe.Unity.Logger/LogLevel,string,object) (at ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Logger.cs:262) Mediapipe.Unity.Logger:Log (Mediapipe.Unity.Logger/LogLevel,string,object) (at ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Logger.cs:138) Mediapipe.Unity.Logger:LogInfo (string,object) (at ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Logger.cs:181) Mediapipe.Unity.LocalResourceManager/d7:MoveNext () (at ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/ResourceManager/LocalResourceManager.cs:43) Mediapipe.Unity.WaitForResult/d20:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:51) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.WaitForResult:.ctor (UnityEngine.MonoBehaviour,System.Collections.IEnumerator,long) (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:34) Mediapipe.Unity.Sample.GraphRunner:WaitForAsset (string,string,bool) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:300) Mediapipe.Unity.Sample.GraphRunner:WaitForAsset (string,bool) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:305) Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph:RequestDependentAssets () (at Assets/MediaPipeUnity/Samples/Scenes/Face Detection/FaceDetectionGraph.cs:68) Mediapipe.Unity.Sample.GraphRunner/d39:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:124) Mediapipe.Unity.WaitForResult/d20:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:51) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.WaitForResult:.ctor (UnityEngine.MonoBehaviour,System.Collections.IEnumerator,long) (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:34) Mediapipe.Unity.Sample.GraphRunner:WaitForInit (Mediapipe.Unity.RunningMode) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:109) Mediapipe.Unity.Sample.ImageSourceSolution1/<Run>d__12<Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph>:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:60) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.ImageSourceSolution1:Play () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:35) Mediapipe.Unity.Sample.Solution/d__9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:31) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/ResourceManager/LocalResourceManager.cs Line: 43)

LocalResourceManager: face_detection_full_range_sparse.bytes will not be copied to /Users/shanemccartney/Library/Application Support/DefaultCompany/MediaPipeUnityPlugin/face_detection_full_range_sparse.bytes because it already exists UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,string,object) Mediapipe.Unity.Logger/LoggerWrapper:Log (Mediapipe.Unity.Logger/LogLevel,string,object) (at ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Logger.cs:262) Mediapipe.Unity.Logger:Log (Mediapipe.Unity.Logger/LogLevel,string,object) (at ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Logger.cs:138) Mediapipe.Unity.Logger:LogInfo (string,object) (at ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/Logger.cs:181) Mediapipe.Unity.LocalResourceManager/d7:MoveNext () (at ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/ResourceManager/LocalResourceManager.cs:43) Mediapipe.Unity.WaitForResult/d20:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:51) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.WaitForResult:.ctor (UnityEngine.MonoBehaviour,System.Collections.IEnumerator,long) (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:34) Mediapipe.Unity.Sample.GraphRunner:WaitForAsset (string,string,bool) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:300) Mediapipe.Unity.Sample.GraphRunner:WaitForAsset (string,bool) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:305) Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph:RequestDependentAssets () (at Assets/MediaPipeUnity/Samples/Scenes/Face Detection/FaceDetectionGraph.cs:68) Mediapipe.Unity.Sample.GraphRunner/d39:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:124) Mediapipe.Unity.WaitForResult/d20:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:51) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.WaitForResult:.ctor (UnityEngine.MonoBehaviour,System.Collections.IEnumerator,long) (at Assets/MediaPipeUnity/Samples/Common/Scripts/WaitForResult.cs:34) Mediapipe.Unity.Sample.GraphRunner:WaitForInit (Mediapipe.Unity.RunningMode) (at Assets/MediaPipeUnity/Samples/Common/Scripts/GraphRunner.cs:109) Mediapipe.Unity.Sample.ImageSourceSolution1/<Run>d__12<Mediapipe.Unity.Sample.FaceDetection.FaceDetectionGraph>:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:60) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEngine.MonoBehaviour:StartCoroutine (System.Collections.IEnumerator) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/MonoBehaviour.bindings.cs:112) Mediapipe.Unity.Sample.ImageSourceSolution1:Play () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSourceSolution.cs:35) Mediapipe.Unity.Sample.Solution/d__9:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/Solution.cs:31) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17)

(Filename: ./Packages/com.github.homuler.mediapipe/Runtime/Scripts/Unity/ResourceManager/LocalResourceManager.cs Line: 43)

Waiting for WebCamTexture to start UnityEngine.StackTraceUtility:ExtractStackTrace () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/StackTrace.cs:37) UnityEngine.DebugLogHandler:LogFormat (UnityEngine.LogType,UnityEngine.Object,string,object[]) UnityEngine.Logger:Log (UnityEngine.LogType,object) UnityEngine.Debug:Log (object) Mediapipe.Unity.WebCamSource/d48:MoveNext () (at Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSource/WebCamSource.cs:249) UnityEngine.SetupCoroutine:InvokeMoveNext (System.Collections.IEnumerator,intptr) (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Coroutines.cs:17) UnityEditor.EditorGUIUtility:RenderPlayModeViewCamerasInternal (UnityEngine.RenderTexture,int,UnityEngine.Vector2,bool,bool) UnityEditor.PlayModeView:RenderView (UnityEngine.Vector2,bool) (at /Users/bokken/build/output/unity/unity/Editor/Mono/PlayModeView/PlayModeView.cs:248) UnityEditor.GameView:OnGUI () (at /Users/bokken/build/output/unity/unity/Editor/Mono/GameView/GameView.cs:976) UnityEditor.HostView:InvokeOnGUI (UnityEngine.Rect) (at /Users/bokken/build/output/unity/unity/Editor/Mono/HostView.cs:512) UnityEditor.DockArea:DrawView (UnityEngine.Rect) (at /Users/bokken/build/output/unity/unity/Editor/Mono/GUI/DockArea.cs:385) UnityEditor.DockArea:OldOnGUI () (at /Users/bokken/build/output/unity/unity/Editor/Mono/GUI/DockArea.cs:376) UnityEngine.UIElements.IMGUIContainer:DoOnGUI (UnityEngine.Event,UnityEngine.Matrix4x4,UnityEngine.Rect,bool,UnityEngine.Rect,System.Action,bool) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/IMGUIContainer.cs:355) UnityEngine.UIElements.IMGUIContainer:HandleIMGUIEvent (UnityEngine.Event,UnityEngine.Matrix4x4,UnityEngine.Rect,System.Action,bool) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/IMGUIContainer.cs:676) UnityEngine.UIElements.IMGUIContainer:DoIMGUIRepaint () (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/IMGUIContainer.cs:536) UnityEngine.UIElements.UIR.RenderChainCommand:ExecuteNonDrawMesh (UnityEngine.UIElements.UIR.DrawParams,single,System.Exception&) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/Renderer/UIRenderer/UIRenderers.cs:130) UnityEngine.UIElements.UIR.UIRenderDevice:EvaluateChain (UnityEngine.UIElements.UIR.RenderChainCommand,UnityEngine.Material,UnityEngine.Material,UnityEngine.Texture,UnityEngine.Texture,single,Unity.Collections.NativeSlice1<UnityEngine.UIElements.UIR.Transform3x4>,Unity.Collections.NativeSlice1,UnityEngine.MaterialPropertyBlock,bool,System.Exception&) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/Renderer/UIRenderer/UIRenderDevice.cs:1003) UnityEngine.UIElements.UIR.RenderChain:Render () (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/Renderer/UIRRenderChain.cs:501) UnityEngine.UIElements.UIRRepaintUpdater:Update () (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/Renderer/UIRRepaintUpdater.cs:79) UnityEngine.UIElements.VisualTreeUpdater:UpdateVisualTreePhase (UnityEngine.UIElements.VisualTreeUpdatePhase) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/VisualTreeUpdater.cs:111) UnityEngine.UIElements.Panel:UpdateForRepaint () (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/Panel.cs:1026) UnityEngine.UIElements.Panel:Repaint (UnityEngine.Event) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/Panel.cs:1087) UnityEngine.UIElements.UIElementsUtility:DoDispatch (UnityEngine.UIElements.BaseVisualElementPanel) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/UIElementsUtility.cs:454) UnityEngine.UIElements.UIElementsUtility:UnityEngine.UIElements.IUIElementsUtility.ProcessEvent (int,intptr,bool&) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/UIElementsUtility.cs:205) UnityEngine.UIElements.UIEventRegistration:ProcessEvent (int,intptr) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/UIElementsUtility.cs:74) UnityEngine.UIElements.UIEventRegistration/<>c:<.cctor>b1_2 (int,intptr) (at /Users/bokken/build/output/unity/unity/ModuleOverrides/com.unity.ui/Core/UIElementsUtility.cs:28) UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&) (at /Users/bokken/build/output/unity/unity/Modules/IMGUI/GUIUtility.cs:190)

(Filename: Assets/MediaPipeUnity/Samples/Common/Scripts/ImageSource/WebCamSource.cs Line: 249)

Screenshot/Video

No response

Additional Context

No response

shanemccartney commented 10 months ago

The memory leak is pretty large about 1 GB a second in all of the sample scenes.

There are also sample scenes under a folder named Tasks, running these scenes also has a memory leak but at a lower rate approx 1GB/10 seconds.

This issue can be tested with the sample files with no other code added that would interfere with or create this issue we initially found this issue on a lower version of this API so it has likely been an issue for a while.

shanemccartney commented 10 months ago

Believe this issue might be due to building with the command python build.py build --desktop cpu -vv

And running on MacOs rather than using this instead, I did not notice this option at the time

python build.py build --desktop cpu --opencv cmake --macos_universal -vv

Will get back to you to confirm if this fixed the memory leak issue