gpt4 book ai didi

c# - BodyFrameReader.AcquireLatestFrame 总是返回 null

转载 作者:行者123 更新时间:2023-11-30 16:08:37 24 4
gpt4 key购买 nike

我正在使用适用于 Unity (5.0) 的 Kinect (v2) 插件为 body 制作动画。我正在使用下面的代码,但 BodyFrameReader.AcquireLatestFrame() 总是返回 null:

private KinectSensor _sensor;
private BodyFrameReader _reader;

void Start()
{
_sensor = KinectSensor.GetDefault();

if (_sensor != null)
{
_reader = _sensor.BodyFrameSource.OpenReader();

if (!_sensor.IsOpen)
{
_sensor.Open();
}
}
}

void Update()
{
if (_reader != null)
{
var frame = _reader.AcquireLatestFrame(); //This always returns null

if (frame == null)
{
Debug.Log("No frame available");
return;
}
}
}

我做了一些调试,我可以看到我得到了一帧,之后 AcquireLatestFrame() 总是空的。在 BodyFrameReader.cs 中,它调用 native 方法 Windows_Kinect_BodyFrameReader_AcquireLastestFrame(_pnative)。返回 nullptr

最佳答案

如果你有一张图片那么什么都没有这意味着你还没有释放资源并且它不能覆盖它。在更新结束时,你必须释放你使用的所有资源(我猜你的读者除外)在 C++ 中释放指针很容易,但我不知道如何在 C# 中执行。如果我是你,我会查看样本以找到它们释放资源的位置。

关于c# - BodyFrameReader.AcquireLatestFrame 总是返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28963867/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com