{"action":"opened","issue":{"url":"https://api.github.com/repos/OpenKinect/libfreenect2/issues/681","repository_url":"https://api.github.com/repos/OpenKinect/libfreenect2","labels_url":"https://api.github.com/repos/OpenKinect/libfreenect2/issues/681/labels{/name}","comments_url":"https://api.github.com/repos/OpenKinect/libfreenect2/issues/681/comments","events_url":"https://api.github.com/repos/OpenKinect/libfreenect2/issues/681/events","html_url":"https://github.com/OpenKinect/libfreenect2/issues/681","id":164096053,"number":681,"title":"[Question] Depth processor stuck when preserve depth frames rather than deleting them instantly","user":{"login":"dujiulun","id":5555270,"avatar_url":"https://avatars.githubusercontent.com/u/5555270?v=3","gravatar_id":"","url":"https://api.github.com/users/dujiulun","html_url":"https://github.com/dujiulun","followers_url":"https://api.github.com/users/dujiulun/followers","following_url":"https://api.github.com/users/dujiulun/following{/other_user}","gists_url":"https://api.github.com/users/dujiulun/gists{/gist_id}","starred_url":"https://api.github.com/users/dujiulun/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dujiulun/subscriptions","organizations_url":"https://api.github.com/users/dujiulun/orgs","repos_url":"https://api.github.com/users/dujiulun/repos","events_url":"https://api.github.com/users/dujiulun/events{/privacy}","received_events_url":"https://api.github.com/users/dujiulun/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2016-07-06T14:55:28Z","updated_at":"2016-07-06T14:55:28Z","closed_at":null,"body":"**Overview Description:**\r\nIf I preserve a depth frame and delete it later, the depth processor is stuck (\"skipping depth packet\") until the last frame is deleted.\r\n\r\nIn my application, I copied and modified the codes from `Protonect` example and `SyncMultiFrameListener`. I use `Protonect`'s main thread to `waitForNewFrame()`, and preserve the color and depth frames for batch delete once per second. Then I modified `SyncMultiFrameListener::release()` so it doesn't call `Frame`'s destructor. After that, I can only get one group of frames per second, and no more until I delete these frames.\r\n\r\nThen I did more testing, and realized that only depth processor is stuck (I used CUDA to process depth frames). If I use a custom listener, I can get 30fps color, but only 1 depth frame unless I delete the previous one.\r\n\r\nI dug through the code but couldn't find where to change to fix this. Could you please help?\r\n\r\n**Version, Platform, and Hardware Bug Found:**\r\n```\r\n1. `git log -1 --oneline`\r\n83f88b4 Update author list for 0.2 release\r\n2. `uname -a`\r\nLinux tegra-ubuntu 3.10.40-gdacac96 #1 SMP PREEMPT Thu Jun 25 15:25:11 PDT 2015 armv7l armv7l armv7l GNU/Linux\r\n3. `lsusb -t`\r\n/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=tegra-xhci/2p, 5000M\r\n    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/1p, 5000M\r\n        |__ Port 1: Dev 3, If 0, Class=Vendor Specific Class, Driver=, 5000M\r\n        |__ Port 1: Dev 3, If 1, Class=Vendor Specific Class, Driver=, 5000M\r\n        |__ Port 1: Dev 3, If 2, Class=Audio, Driver=snd-usb-audio, 5000M\r\n        |__ Port 1: Dev 3, If 3, Class=Audio, Driver=snd-usb-audio, 5000M\r\n4. `lspci -nn`\r\n00:00.0 PCI bridge [0604]: NVIDIA Corporation TegraK1 PCIe x1 Bridge [10de:0e13] (rev a1)\r\n01:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 0c)\r\n```\r\n\r\n**Steps to Reproduce:**\r\n\r\n1. Use CUDA depth processor. After getting a depth `Frame`, don't destruct it.\r\n2. Wait for more frames.\r\n3. \r\n\r\n**Actual Results:**\r\nNo more depth frames will be received. The debug log shows \"skipping depth packet\" lines.\r\n\r\n**Expected Results:**\r\nMore depth frames should come.\r\n\r\n**Reproducibility:**\r\n\r\n**Additional Information:**\r\n"}}
{"actor":{"display_login":"dujiulun"}}