The Kinect, Synapse and Quartz Composer Tutorial

How to use Quartz Composer, Synapse and an Xbox Kinect to Create Special Effects on your Mac

If you’re looking to kickstart your Kinect programming and create some magic on the Mac, then this is the place to be. In this tutorial we use Synapse, Quartz Composer and the Kinect sensor to create a cool motion-activated particle effect that lets you move an animation around your screen using only your hands.

Please note, this tutorial has been completed using Mac OS X 10.8 (Mountain Lion). It is also important to note that your Xbox Kinect should be model #1414. If you have the newer model #1474, then you may need to complete this extra step to get your Kinect working.

Download the Project Files

This tutorial will guide you through all the steps necessary to install and use Quartz Composer and Synapse with the Xbox Kinect on Mac. If you have any issues when you reach Step 4, then feel free to download my project files to experiment with.

Download Project Files

Step 1: Setup the Xbox Kinect

First things first, before we can move forward, you’ll need to make sure you have your Xbox Kinect setup. Follow this guide to get you setup and ready to go.

Step 2: Install Quartz Composer

Quartz Composer is an amazing app created by Apple, and distributed via the Apple Developer network.

1. Open Xcode on your Mac, and navigate to: Xcode / Open Developer Tool / More Developer Tools…

Xcode More Developer Tools Menu Option

Menubar navigation to ‘More Developer Tools…’

2. This will take you to the Apple Developer website.  Once logged in you should see the Apple Developer Downloads page. Scroll until you see the Graphics Tools for Xcode package. Click the disk image icon to download.

Download Graphics Tools for Xcode

At the time of writing, there is a developer preview of Graphics Tools for Xcode 5 Preview. I’m choosing to stick with the stable version for Xcode 4 until Xcode 5 is officially released.

3. Once downloaded, double click the disk image, and then copy the contents to the Applications folder on your hard drive.

Copy Xcode Graphics Tools to the Applications Folder

Step 3: Install & Open Synapse

Synapse is an awesome application by Ryan Challinor that will supercharge your Kinect.  It’ll recognise your body’s joint positions and movements, and then send all that data to Quartz Composer for us to manipulate. So to get started, let’s install this little wonder.

1. Firstly head on over to Ryan’s site and download Synapse for Mac, and Quartz Composer example project + plugins. Unzip and move the contents to the Kinect folder we created in the previous tutorial (or anywhere you like – this is really just to keep things organised).

2. Next navigate to the following folder on your computer: Library / Graphics / Quartz Composer Plug-Ins. If the Grahics or Quartz Composer Plug-Ins folders don’t exist, then feel free to create them.

If you cannot see the Library folder, click the Go menubar option in your Finder, and hold down the Option key to make it visible.

3. From your Synapse folder, move the two files called qcOSC.plugin and Synapse Kinect.plugin to the Quartz Composer Plug-Ins folder.

Add Synapse and qcOSC plugins to your Library folder

4. Awesome, now let’s get skeletal! Back in your freshly unzipped Synapse folder, you will find an application called (funnily enough) Synapse.  Open it up, and you should see a window appear.  Now stand up, bend your elbows, and point your hands to the roof and you’ll see a red 3D skeleton lock onto your body. Wave your hands around and you will also notice the blue swipe marks appear from your movement.

Not so fast! Make sure you perform this last step before we head into Quartz Composer.

4. Remember that Quartz Composer example project + plugins zip you downloaded? When you unzipped it, you would have created a QuartzKinect folder. Inside here you will find 4 Quartz Passthrough files, these allow Synapse to send your movement data to other applications (very important). To start, lets open the one called quartz_passthrough, and leave it running in the background with Synapse.

Step 4: Animating with Synapse and Quartz Composer

And now for the part you’ve been waiting for! This next section will show you how to use Synapse in conjunction with Quartz Composer to create a motion-controlled animation.

1. At this point, you should have Synapse open with your skeleton detected, and quartz_passthrough running to send through your movement data.  Now open the Quartz Composer application. When you do, you will see the template chooser.  Select Basic Composition and click the Choose button.

Quartz Composer Template Chooser

When your project opens, you’ll see 3 windows.  The biggest one is your Editor – in Quartz, you’ll use this visual editor to code up your application. Then you have a Library (aka Patch Library) that contains a bunch of cool patches (aka modules) you can drag and drop into the Editor.  And lastly you have the Viewer, which will allow you to preview your application as you build it.

Quartz Composer Blank Template

2. In the Library window, type the word Synapse in the filter search box, and drag the Synapse patch over to the Editor.

Drag the Synapse patch to the Quartz Editor

3. Next search the Library for Sprite, and again drag this patch to the Editor. You’ll notice that when the Sprite is added, your Viewer  will display a white box like so:

Quartz Composer with Sprite & Synapse plug-ins

When you add a patch in Quartz Composer, you’ll notice they often have a list of parameters.  To edit these easily, click the Parameters button on your Editor window.

Quartz Patch Parameters

4. To get our sprite to stretch and fill our Viewer completely, click the Sprite patch, and then open the Parameters pane. Change the Width to 2, and Height to 1.5.

Sprite Patch Parameters

5. Next we are going to fill our sprite image with the feed from our Xbox Kinect.  To do this, we click on the circle beside Depth Image in the Synapse patch, and drag it to the Image parameter on our Sprite patch.  Once connected, it should look like so:

Drag Synapse to the Sprite module

And your Viewer should look something like this:

Quartz Viewer showing Kinect feed

If you get to this step and can’t see the Kinect feed, just check to make sure you still have Synapse open and running in the background.

6. Okay, your feed’s working, so how about we add some animation! Search your Library for the Particle System patch, and drag it to your Editor. Then search for the Lenticular Halo patch and drag it over too.

7. Next join the two together by dragging the circle next to Image on Lenticular Halo to the circle next to Image on Particle System like so:

Link Lenticular Halo to Particle System

You’ll now see something like this in your Viewer:

Lenticular Halo Synapse Kinect Demo

8. Now let’s make it move. Search your library for the following patches, and drag them to the editor: qcOSC,  Structure Index Member (drag over two of these), Math (and drag six of these).

9. Now click on the qcOSC patch in your Editor, and click the Patch Inspector button.

Patch Inspector button10. When the Patch Inspector opens, you’ll notice a drop-down menu. Click it and select Settings. Then change the port number to 12348. You’ll notice that the qCOSC patch starts gaining additional parameters.

qcOSC Port Setting

If you don’t see these parameters forming, make sure you completed step 3, point 4.

11. Now let’s get our right hand to control the horizontal x-position of our particle system. To do this, grab 3 of the Math patches, and change their Parameters to the following: Math patch #1: 0, Divide, 640Math patch #2: 0, Minus, 0.5Math patch #3: 0, Multiply, 2

X-Position Math Patch Parameters

12. Now we can link it all up!

  • Drag the circle from the qcOSC / righthand_pos_screen parameter to the Structure Index Member / Structure parameter
  • Drag the Structure Index Member / Member parameter to connect with the top left circle on your Math (Division) patch
  • Drag the top right circle from Math (Division) to the top left circle in Math (Minus)
  • Drag the top right circle from Math (Minus) to the top left circle in Math (Multiply)
  • And finally, drag the top right Math (Multiply) to the Particle System / X Position parameter.

Link up the patches to control the x position

Now take a look at your Viewer, and move your right hand around. If you did everything right, you should see the particle system following your hand movement.

Now, how about we get the vertical y-position working too! This is pretty similar to what we just did, but with some parameter differences on the Math patches.

13. Select the remaining three Math patches, and set their parameters to the following: Math patch #4: 0Divide480Math patch #5: 0Minus0.5Math patch #6: 0Multiply, -2.

14. Now select the remaining unlinked Structure Index Member patch, and set the Index parameter to 1.

15. Now link them all up like you did for the x-position, except for the final Math (Multiply) object, which you will connect to the Particle System / Y Position parameter like so:

Synapse Kinect for Quartz Composer all linked up

Now wave your right hand around again, and you should see the particle system following your movement on both the x and y axis.

Extra Credit

Okay okay, I hear you.  “The lenticular halo effect is nice, but what else can I do?”  Lucky for you, Quartz composer comes with a raft of patches for you to experiment with.

In one of my previous posts, reader Luis commented that he was looking forward to a Quartz Composer motion tutorial so he could put together something for his wedding.  With this inspiration in mind, let’s alter our project to become all lovey dovey!

1. Click the Lenticular Halo in your Editor and press Delete to remove it.

2. Now search the Library for the Gradient patch.  Now what we want is to render this gradient above our Kinect feed, but below our particle system.  Click the top right corner of the Gradient patch to reveal the layer menu, and select a number that’s lower than that of our Particle System layer, but higher than that of our Sprite.  See these images for reference:

Select the Gradient layer menuLayer Order

3. Now open the Parameters for the Gradient patch. Select 3 colours of your choice, and change the Blending option to Add to overlay our Kinect feed.

Gradient Parameters

4. Now we have our filter in place, we’re going to import an image to use with our particle system. Search the Library for Image Importer and drag it to the Editor.

5. Now open the Parameters for Image Importer and you’ll see a field called Image Location. The easiest way to fill this is to simply drag an image from your desktop onto the empty field.  Just remember to make sure that the Quartz Composer application is in the foreground when you do this or it won’t register. Alternatively, if your image is in the same directory as your Quartz Composer project file, then you can just write the name of your image here. I’m going with a heart image to match our theme.

6. Lastly, we just need to connect our image to our particle effect. Click the circle next to Image Importer / Image, and connect it to Particle System / Image and watch the magic happen!

Extra Credit Quartz Project

And if everything went well, you should have a fun new animation playing in your Viewer:


We’ve just been through a lot of really detailed instructions. If your project is not tracking your hand movements, don’t worry, there are a few things we can do to try and fix the issue.

1. Firstly save your Quartz project, then close Synapse, quartz_passthroughQuartz Composer.  Then re-open them one at a time. Synapse first (then hold your hands to track your skeleton), quartz_passthrough second, and then open your saved Quartz Composer project last.

2. If your qcOSC patch is showing too many parameters (like this), then you’ve probably closed and re-opened Synapse or quartz_passthrough during the tutorial. To fix this, try quitting Synapse & quartz_passthrough, then deleting the qcOSC patch. Then re-add the qcOSC patch to your project, and link it back up. Save your project, and then follow the instructions above to re-open the applications in sequence.

Phew, you made it! Hopefully you were able to get everything up and running.  Remember, if you’re still having trouble, you can download the Quartz project files I created to play around with.  If you have any other issues, then please shoot them through to me in the comments and I’ll try to add them to the troubleshooting section above.


Submit a Comment
  • Reply


    HI there,

    Your tutorials are wonderful and clear! As a total beginner with processing and kinect I found these easy to follow. I would absolutely love to see more tutorials and mini project walk-throughs.

    Thank you so much for your efforts.

    • Reply

      Glen McPherson

      Thanks Arturas! I’m really glad you’re enjoying the tutorials. There’s definitely a lot more on the horizon, and if you have anything specific you’d like to find out about feel free to let me know.

  • Reply

    Laird Popkin

    This looks amazing, but I am having a few problems.

    1) The Synapse displays depth data (and the Kinect works with depth and images in another app, so I know it’s working on my Mac). But I’m not getting a “skeleton” so it doesn’t seem to be tracking my body.

    2) The Quartz plugin doesn’t seem to be able to connect to Synapse passthrough app. It displays ‘binding to port 12347’, but in Quartz Composer I get ‘Error opening socket on specified port. Please choose a different port.’ no matter what port I enter in the plugin’s settings.

    What I’m seeing in QC is that I get the depth data (and see my body in the kinect test) but no body tracking, so (for example) the particle lens flares stay in one place and don’t follow body position.

    I turned off the Mac OS firewall, and see the same thing. I”m running OS X 10.8.4 on an iMac.

    Any suggestions of what to try?

    • Reply

      Glen McPherson

      Hi there Laird,
      There’s a few things we can test to see if we can get you up and running. First things first, restart your computer and close all the applications from the tutorial. This has definitely helped me before with port issues in Quartz. If not, then read on…

      Alternatively, this issue could be as simple as missing a small step. It definitely sounds like there’s an issue with your Quartz passthrough. Maybe give this a try:

      Follow through the blog steps again until you get to the skeleton step. Now make sure your camera is positioned correctly, and that there’s adequate light in your room. Step back as far as you can to make sure your whole body is visible in the Synapse window (for Synapse to recognise your body it needs to see your legs too). Raise your hands up at 90 degree angles and hold that pose until the skeleton snaps to your body.

      After this step, open up the quartz_passthrough to setup the port, and finally open Quartz Composer and add the Synapse Kinect and qcOSC patches. Set the port again for the qcOSC patch, and hopefully everything works. Please let me know how you go – it’d be great to get you up and running.

      • Reply

        Stefano Fiori

        Hello everyone and hi Glen,
        you did a great work here, thank you thousand.
        This is my current condition: I have an “Error opening socket on specified port” as Laird, but it occurs ONLY when I paste the particles generator nodes into a “render in image” macro patch. I attempt to address only the halo effects to a syphon server and then to mad mapper. But as I cut and copy the (until that time working) composition into a macro patch, the error advise pops up.
        My osx is 10.10.2. All the steps of this tutorial went like a charm except for something on the “setup kinect for 10.8” guide. Any help?

      • Reply


        Grade A stuff. I’m untbosqienauly in your debt.

  • Reply


    is it possible to add ” /rightfoot_pos_screen – structure ” in qcOSC ?
    i need it as” /lefthand_pos_screen structure “, that is readed always by qcOSC from synapse

    thanks for your great TUT

  • Reply


    on step 10 QC don’t take port (“error on opening socket on specified port. Choose different port”). Somebody knows this problem ? Thanks..

    • Reply

      Glen McPherson

      Hi Oula, I’ve just made a comment below to Nico that might help. If you can let me know and report back, hopefully we can get this working for you. If this is a common occurrence I’ll need to modify or make a note of it in the tutorial.

  • Reply


    I have error too “Error on opening socket on specified port. Choose different port”. I do it strict on this tutorial. google did not help. please who know, help.
    OS X 10.7.5

    • Reply

      Glen McPherson

      Hi Zorn, I’ve made a reply to Nico below that may address this. Can you also let me know if you have followed the setup tutorial?

      • Reply


        Thanks, Glen. One more question.
        Will this tutorial work on OS X 10.9 Mavericks?

    • Reply


      Thanks for shrgina. Always good to find a real expert.

  • Reply


    on step 10 QC don’t take port

    • Reply

      Glen McPherson

      Hi Nico,

      I think this issue can sometimes stem from repetition. So if you’ve attempted to follow the tutorial, and something crashed or you closed one of the applications, then the port might still be allocated. The best thing to do in this situation is to close everything and repeat the steps. If it really doesn’t work, maybe try resetting your machine, and of course ensuring that the Kinect is plugged in correctly and that the green status light is on.

      Let me know if this helps, and if not, if you notice any other anomalies that might help to narrow down the issue!

      • Reply

        Chris Wardell

        Hello Glen,

        I’ve tried both resetting and shutting down my computer, but every time I open the quartz passthrough it is always unable to bind to the port.

        Everything is on. Green light. Synapse Body Skeleton Connected. I get:

        udpsend: unable to resolve host localhost.
        udpsend: unable to resolve host localhost.
        binding to port 12347
        bind to port 12347 unsuccessful.
        there is probably something already bound to this port.


  • Reply


    Hello GLEN,
    Thanks for your details tutorial. We have the problem here for sending the message from Synapse pass through to QCOSC, it has a message saying that “port 12347 is unsuccessfully bind” (something like that)

    What is the problem? Any solutions, thanks.

    • Reply

      Glen McPherson

      Hi Casber,

      I just replied to Nico above. Do you want to give that a try and let me know if it’s still happening? If you can describe any differences you may have to the tutorial above, that might also be helpful (like different versions of applications etc.). Good luck!!

  • Reply

    Dae Hong Kim


    Thank you so much for this great tutorial~!!!!

  • Reply


    Hi, I am from Mexico thanks for this tutorial! could you tell me how I can do this I would greatly appreciate

    • Reply

      Glen McPherson

      Hey cool link, I’ll take a look and see what I can come up with!

  • Reply


    Absolutely amazing! I’m a big fan of your blog. Thanks a lot. I’m working in some projects. Do you know if there’s something like synapse but to recognize fingers?

    Best. Thanks again. And happy new year!


    • Reply

      Glen McPherson

      Thanks Jorge!
      Glad you’re liking the tutorials. For fingers, you might like to try the Leap Motion controller, because unfortunately I think the Kinect might be too low resolution to capture any fine motor/joint movement. Happy new year to you too! 🙂

  • Reply


    First, Thank You very much for making Synapse available and doing this very detailed and clear tutorial. I am an Artist, not a programer, and have been trying for a while to make the Kinect work. I followed the tutorial yesterday, and it worked fine, but today, it doesn’t work anymore. I have started again from scratch, and I keep getting a message “Error opening socket on specified port. Please choose a different port”. I downloaded your project files and opened the, same thing. I tried restarting the computer, repairing permissions, and running Diskwarrior, to no avail.
    Any suggestions?
    Thank you.

  • Reply


    Nice tut. Made it and it been working ’tilll I tried to save qsc and run it. Got the same problem with socket opening for 12348 port in qcOSC.
    OSX10.8.4, QC 4.6., MBP Retina 2012. Made your setup. No way. System log filtered with “qcosc” gives smth like this:

    Jan 17 21:15:36 Swoolfs-MacBook-Pro-2.local Finder[279]: *** : Failed instantiating patch with name “QCPlugInPatch:qcOSCPlugIn”
    Cannot create node of class “QCPlugInPatch” and identifier “qcOSCPlugIn”
    Cannot create connection from [“/righthand_pos_screen” @ “PlugInPatch_qcOSCPlugIn_1”] to [“inputStructure” @ “StructureMember_index_1”]
    Cannot create connection from [“/righthand_pos_screen” @ “PlugInPatch_qcOSCPlugIn_1”] to [“inputStructure” @ “StructureMember_index_2”]
    Jan 17 21:15:46 Swoolfs-MacBook-Pro-2.local mDNSResponder[56]: Client application registered 2 identical instances of service Swoolfs-MacBook-Pro-2:1234832(qcOSC)._osc._udp.local. port 12348.
    Jan 17 21:15:58 Swoolfs-MacBook-Pro-2.local Finder[279]: *** : Failed instantiating patch with name “QCPlugInPatch:qcOSCPlugIn”
    Cannot create node of class “QCPlugInPatch” and identifier “qcOSCPlugIn”
    Cannot create connection from [“/righthand_pos_screen” @ “PlugInPatch_qcOSCPlugIn_1”] to [“inputStructure” @ “StructureMember_index_1”]
    Cannot create connection from [“/righthand_pos_screen” @ “PlugInPatch_qcOSCPlugIn_1”] to [“inputStructure” @ “StructureMember_index_2”]
    Jan 17 21:16:00 Swoolfs-MacBook-Pro-2.local mDNSResponder[56]: Client application registered 2 identical instances of service Swoolfs-MacBook-Pro-2:1234832(qcOSC)._osc._udp.local. port 12348.
    Jan 17 21:16:01 Swoolfs-MacBook-Pro-2.local Finder[279]: *** : Failed instantiating patch with name “QCPlugInPatch:qcOSCPlugIn”
    Cannot create node of class “QCPlugInPatch” and identifier “qcOSCPlugIn”
    Cannot create connection from [“/righthand_pos_screen” @ “PlugInPatch_qcOSCPlugIn_1”] to [“inputStructure” @ “StructureMember_index_1”]
    Cannot create connection from [“/righthand_pos_screen” @ “PlugInPatch_qcOSCPlugIn_1”] to [“inputStructure” @ “StructureMember_index_2”]

    and so on..

    Tried OSC Reciever instead qcOSC – there were an error:

    An exception was raised:
    -[QCOSCReceiver _resetExecution]: Inconsistent state

    0x8e4b7b2c: GFException
    0x8e4ba95e: GFThrowException
    0x8e525cb8: -[QCPatch(Private) _resetExecution]
    0x8e528cb1: -[QCNetworkPatchUI updatePort:]
    0x8a985959: -[NSApplication sendAction:to:from:]
    0x8a9857b7: -[NSControl sendAction:to:]
    0x8aa67e38: -[NSTextField textDidEndEditing:]
    0x82daaeda: _CFXNotificationPost
    0x8d0ad7b6: -[NSNotificationCenter postNotificationName:object:userInfo:]
    0x8a791469: -[NSTextView(NSPrivate) _giveUpFirstResponder:]
    0x8a791296: -[NSTextView(NSKeyBindingCommands) insertNewline:]
    0x8a790f6c: -[NSResponder doCommandBySelector:]
    0x8a790dce: -[NSTextView doCommandBySelector:]
    0x8a813e6e: -[NSKeyBindingManager(NSKeyBindingManager_MultiClients) interpretEventAsCommand:forClient:]
    0x8a8132db: -[NSTextInputContext handleEvent:]
    0x8a812ea7: -[NSView interpretKeyEvents:]
    0x8a75fc57: -[NSTextView keyDown:]
    0x8a97b020: -[NSWindow sendEvent:]
    0x8a976644: -[NSApplication sendEvent:]
    0x8a88c21a: -[NSApplication run]

    seems there’s something worth to look at in qc – qc_passthrough interconnection.

    SY, SW.

  • Reply


    Hey, Amazing work, so easy to follow and works great!

    I was wondering if you new what the parameters would be for the Z Position is possible at all?

    would like the image to follow me in and out of the frame.


  • Reply


    annnd, sorry i meant to ask this in the post too, is it possible to have the system track another object such as a certain coloured ball on a pool table?

  • Reply

    nico cercueil


    Thanks a lot for the tutorial. I have a problem at the beginning because synapse don’t seems to work on my computer ? I have OS Maverick, is there a problem with this one ?

    • Reply

      Glen McPherson

      Hi Nico. It most likely is to do with Mavericks. I’m half-way through writing a new tutorial to get the Kinect fully functioning in Mavericks, and know it’s something a lot of visitors are waiting on. You may like to add your email to the signup form in the sidebar, which I’ll use to email everyone when the tutorial goes live. Hopefully that helps you out… soon!

  • Reply


    Hey Glen, first of all thanks for this great stuff!!
    i directly want to order a kinect…. but then i was thinking about the new Kinect 2.0
    it is much more accurate and should be faster.
    do you now anything about, it if it is working too?


    • Reply

      Glen McPherson

      Hi Francesco, Firstly thanks for the compliment! Glad to know you’re enjoying the site.

      Totally agree with you on the Kinect 2.0 thing. Unfortunately Microsoft haven’t been as hacker friendly with this version. First thing you’ll notice is that the Kinect 2 no longer uses a USB cable – so you can’t plug it into your computer to even get started. Secondly, Microsoft are planning to release a consumer version of Kinect 2, but it’ll be called “Kinect for Windows”… which doesn’t sound very positive for the Mac community, but you never know 😉

      You could have ordered a developer edition prior to release (for $399 US), but unfortunately registrations are now closed. See this link for more information.

      If you’re looking to get started with Kinect, then I’d definitely advise you to start with the old Kinect 1. There’s plenty of great software out there to get you going, it’s incredibly cheap to get up and running, and you’ll learn so much as you go. Then when the day comes that Kinect 2 is released and supported, you’ll have a great foundation on which to upgrade from!

      As soon as developments in Kinect 2 support for PC/Mac are made, I’ll be detailing them on this blog. It might be worth dropping your email in the subscribe form (in the sidebar), or following me on Twitter so you know when that happens!

  • Reply

    stu shapiro

    Hi Thanks so much for the tut.

    I had this all working, someone borrowed my laptop and it came back with the “error ports” issue that many people are having.

    It doesnt seem to bind ports in the passthrough filter and when i open a new quartz project and load qcOSC, the patch has no options, its just am empty purple box.

    so its not receiving any feed from the passthrough. my synapse is working perfectly.

    seems the only answer is to restart everything. which ive done a few times. anyone else find a solution to the port issue?

    i cant even change th eport settings for qcOSC as it doesnt seem to load properly.

    wil try reinstall qcOSC

    • Reply

      stu shapiro

      Hi guys, here is how i solved the issue above.

      passthrough only says binding to port, no other info should be visible.

      In quartz, when you load in qcOSC, it will load up with no inputs. click on patch inspector and put in the 12348 port there. that will tell it to look for the output of passthrough /plus.

      and that will solve the port error problem we have had.

      • Reply

        stu shapiro

        sorry correction. Even when i set the port it gives the port error.

        Loading up projects with qcOSC will give it on load. blank projects give the error when i try set to port 12348

        I have restarted everything so many time.

        Do anyone have a solution for this?

    • Reply


      Your posting is abtlluseoy on the point!

  • Reply


    Solution for the error message “Error opening socket on specified port. Please choose a different port”

    Open quartz, hit cmd+W several times to close all open compositions. make sure to close also the quartz viewer and any other quartz window, then close quartz, close synapse and passthrough and any other visual application like madmapper, syphon etc.

    first start synapse, then quartz passthrough plus and then quartz.
    since there is nothing else in the background of quartz running, you should be able to open your port!
    it took me half a day to figure it out, hope that helps also other people!

    • Reply


      I have noticed that finixg credit activity needs to be conducted with techniques. If not, you are going to find yourself destroying your positioning. In order to succeed in finixg your credit rating you have to always make sure that from this minute you pay any monthly costs promptly before their timetabled date. It’s really significant simply because by certainly not accomplishing that, all other methods that you will decide on to improve your credit positioning will not be useful. Thanks for expressing your suggestions.

  • Reply

    Chris Davis

    Hey Glen, Great tutorial I came across the Synapse a while ago and played around. Thanks for the updated fix I will try and work through it now.

    I have a question for a project I am working on basically I would like to delete the background to black and only have the person in front of the camera visible. Is this possible using the kinect?

    Cheers Chris

  • Reply


    I am not able to get the kinect to track my hand it will make the animation only move in a diagonal line.

    • Reply

      Glen McPherson

      Hi Powerwheeler. This can sometimes be a simple mistake with your project. You may just have linked up an element incorrectly or entered an incorrect value. Try downloading the project files from here and see if you have the same issue. Let me know and we can work it out together.

  • Reply


    heya there,

    i cant seem to find synapse in the quartz composer library, help please

    • Reply

      Glen McPherson

      Hi Elliott, this might be an easy fix – you’ll just need to go back over Step 3 and ensure that the Synapse plugin is added to your Quartz Composer plugin files. Check out this step specifically. Let me know how you go!

  • Reply


    Thanks Glen! Great tutorial!! After I upgraded my OSX to Maverick yesterday, Synapse doesn’t recognise my bone anymore. Do you have any suggestion? I’m Tung, a visual artist from Saigon, Vietnam. Thank you very much and very appreciate your contribution.


  • Reply

    Phil C


    Your tutorials are very helpful! I just have one little problem;

    I had to create a Graphics folder into my library, qcOSC.plugin is showing up in Quartz Composer but the Synapse Kinect.plugin is not…

    Please help!!!

    Thank you!

  • Reply


    If you’re embedding the QC Composition (qtz) into an XCode application, XCode 5 has a bug that makes this really hard. The all important QCView and QCParametersView objects now stop the .xib file from loading.

    The work around is to do what you’d do in the Interface Builder tool programmatically. I have blogged about my solution to doing this:

  • Reply

    Carolina Saenz

    Hi, An excellent tutorial that I did a performance basing on this capture. This is a link

    I have an important query, currently I have the operating system Mountain Lion to install some drivers asking me to update the computer this is for the use of the computer to another software nothing to do with this issue, the question is: if I install on my computer Maveriks going to be able to run this patch both qc and max? or should I not update? Greetings !!

  • Reply

    Carolina Saenz

    Hi, An excellent tutorial that I did a performance basing on this capture

    I have an important query, currently I have the operating system Mountain Lion to install some drivers asking me to update the computer this is for the use of the computer to another software nothing to do with this issue, the question is: if I install on my computer Maveriks going to be able to run this patch both qc and max? or should I not update?

    Greetings !!

    • Reply


      Thank you so much for this arectli, it saved me time!

  • Reply


    Hi!! I really want to thank you for making this amazing tutorials! it was really helpfull, and without this i couldn’t make this by my own haha. It’s just i have one problem, the image in .png or .jpeg doesn’t appear, it looks white, i don’t know what is happening, if you could answer it would be great! thank you!

  • Reply


    Outstanding work! This is just great! Tested and working on my Mac!!

  • Reply


    Hi Glenn, I find your work very exciting and usefull for mi line of personal projects. The thing is I allways get stuck on step 3. Whenever I try and open any Q Comp, I get the same error: “Error opening socket on specified port. Please choose a different port.”, I guess it has smthn to do with port on quartz_passtrough_plus, which is binding to port 12347 (sorry, I worked a bit on QC yeas ago, but I’m an absolute rocky on Max). Then I get all of these in a second popup window; > (null)
    : Patch with name “QCPlugInPatch:Quartz_KinectPlugIn” is missing

    > Macro Patch
    Cannot create node of class “QCPlugInPatch” and identifier “Quartz_KinectPlugIn”

    > Macro Patch
    Cannot create connection from [“outputImage” @ “PlugInPatch_Quartz_KinectPlugIn_1”] to [“inputImage” @ “MaskToAlpha_1”]

    > (null)
    State restoration failed on

    Quartz Kinect plugin missing? is that making reference to “Synapse Kinect.plugin” placed in librayry/graphics/Quartz composer plugins? Cause it is there (not sure also why plugins in there lost images), Well, appreciate much your help.

    imac 11,1 27″ i5 2.66, ati radeon hd 512mb, 12gb ram, 1tbhd, kinect 1414, Quartz 3.1, OSX 10.6.8.

    Please help! thanks a lot.

  • Reply


    Thank you for the awesome tutorials, I have a #1473 and unfortunately the link that you mentioned is down (, is there any other reliable tutorial to get the 1473 to work?


    • Reply


      That’s a creative answer to a diclufift question

  • Reply


    hello, you can interact with the whole body and not just with your hands?

  • Reply


    This is really pretty cool. I am very interested in adapting something like this to allow a virtual window for the OS X desktop using head tracking to calculate parallax for the desktop wallpaper to give the illusion of looking out of a window when sitting at your computer. I’m a Computer Science and Computer Engineering student and I would be happy to work on this with anyone if they are interested in doing this as well!

  • Reply


    Hi Glen!
    this is great!
    I have a kinect 1447 and want to use it with your examples, but the link to the 1447 fix is broken, there’s a way you can upload it again or maybe just comment what should I do? I’m running a macBook Retina with 10.10.5,

    thanks in advance and congratulations for the great work!

  • Reply

    henri chalem

    Hi Glen, thank’s to share you know how for everybody.
    I have a poppet theatre compagnie
    I dream to adapt this movie Ben X
    in poppet show, mixing some character are virtual (video) controled by kinet and other realy poppet 3d doll.
    Can you help ?
    Thank’s a lot Henri

  • Reply


    I know this is several years ago, but is Synapse and hacking a Kinect in Quartz something that is still going on? The reason being is I’m not having much luck with getting Synapse to open, and all posts are 4 years old.

  • Reply


    Is anyone else having a problem with Synapse… it keeps crashing when I try to open it. Any advice?

  • Reply



    your tutorials are really great. thank you so much. I installed Kinect and it works perfectly. However, I could not run Synapse. It always crashes when I open it. I worked with yosemite and sierra. In both, the synapse crashes. do you know why? also, do you know other options for me to create visuals using Kinect 1414.

    Thank you so much.

  • Reply

    Eric Rasinski

    Synapse is crashing immediately after open on High Sierra 10.13.3. Love your tutorials and I because of you guys I have my Kinect working thus far. Appreciate the awesome walk-throughs.

    Please continue this effort.

Submit a CommentPlease be polite. We appreciate that.

Your Comment