{"id":3725,"date":"2026-05-14T23:09:45","date_gmt":"2026-05-14T15:09:45","guid":{"rendered":"http:\/\/www.magicandlove.com\/blog\/?p=3725"},"modified":"2026-05-15T03:24:11","modified_gmt":"2026-05-14T19:24:11","slug":"processing-demo-videos","status":"publish","type":"post","link":"http:\/\/www.magicandlove.com\/blog\/2026\/05\/14\/processing-demo-videos\/","title":{"rendered":"Processing Demo Videos"},"content":{"rendered":"\n<p>It is a collection of demo videos using <a href=\"https:\/\/processing.org\/\">Processing<\/a> and my own custom software.<\/p>\n\n\n<div class=\"wp-block-automatic-youtube-gallery-block\"><div class=\"automatic-youtube-gallery ayg\">\n        <ayg-theme-classic id=\"ayg-d687b7536fcc869fe42177a7eee09709\" class=\"ayg-theme ayg-theme-classic\" data-params=\"{&quot;uid&quot;:&quot;d687b7536fcc869fe42177a7eee09709&quot;,&quot;loop&quot;:0,&quot;autoadvance&quot;:1,&quot;player_title&quot;:1,&quot;player_description&quot;:1}\">\n        <div class=\"ayg-player\">\n            <div class=\"ayg-player-container\" style=\"max-width: 100%;\">\n                <ayg-player src=\"https:\/\/www.youtube.com\/embed\/NEI-cSWaIt8?enablejsapi=1&#038;playsinline=1&#038;rel=0&#038;modestbranding=1&#038;iv_load_policy=3\" ratio=\"56.25\" title=\"Face detection and fluid simulation in Processing\" poster=\"https:\/\/i.ytimg.com\/vi\/NEI-cSWaIt8\/mqdefault.jpg\"><\/ayg-player>           \n            <\/div>\n            <div class=\"ayg-player-caption\">\n                    \n                    <h2 class=\"ayg-player-title\">Face detection and fluid simulation in Processing<\/h2>  \n                                  \n                    <ayg-description class=\"ayg-player-description\"><span class=\"ayg-player-description-less\">This is a quick demonstration of using the CVImage and PixelFlow libraries in Processing to generate flame from a moving face. The information link and source code will be in <span class=\"ayg-player-description-dots\">&#8230;<\/span><\/span><span class=\"ayg-player-description-more\">my blog at <a href=\"http:\/\/www.magicandlove.com\/blog\/2018\/03\/13\/cvimage-and-pixelflow-in-processing\/\">http:\/\/www.magicandlove.com\/blog\/2018\/03\/13\/cvimage-and-pixelflow-in-processing\/<\/a><\/span><a href=\"#\" class=\"ayg-player-description-toggle-btn\">Show More<\/a><\/ayg-description>\n                            <\/div>\n        <\/div>\n        <div class=\"ayg-videos ayg-gallery ayg-row\">\n                            <div class=\"ayg-video ayg-video-NEI-cSWaIt8 ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2 ayg-active\">\n                    <div class=\"ayg-thumbnail\" data-id=\"NEI-cSWaIt8\" data-title=\"Face detection and fluid simulation in Processing\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/NEI-cSWaIt8\/mqdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"320\" height=\"180\" alt=\"Face detection and fluid simulation in Processing\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">Face detection and fluid simulation in Processing<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\"><span class=\"ayg-player-description-less\">This is a quick demonstration of using the CVImage and PixelFlow libraries in Processing to generate flame from a moving face. The information link and source code will be in <span class=\"ayg-player-description-dots\">&#8230;<\/span><\/span><span class=\"ayg-player-description-more\">my blog at <a href=\"http:\/\/www.magicandlove.com\/blog\/2018\/03\/13\/cvimage-and-pixelflow-in-processing\/\">http:\/\/www.magicandlove.com\/blog\/2018\/03\/13\/cvimage-and-pixelflow-in-processing\/<\/a><\/span><a href=\"#\" class=\"ayg-player-description-toggle-btn\">Show More<\/a><\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-FjTNXAPIaQE ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"FjTNXAPIaQE\" data-title=\"CamShift tracking demo in Processing\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/FjTNXAPIaQE\/maxresdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"1280\" height=\"720\" alt=\"CamShift tracking demo in Processing\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">CamShift tracking demo in Processing<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\">This demonstration uses the Java binding of OpenCV 3.0 beta and Processing to perform the CamShift tracking of a selected area from the live webcam image.<\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-7W3_FRUJAUU ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"7W3_FRUJAUU\" data-title=\"Use of Candide face in Processing\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/7W3_FRUJAUU\/maxresdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"1280\" height=\"720\" alt=\"Use of Candide face in Processing\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">Use of Candide face in Processing<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\">This is an initial experiment with a Candide face in Processing with the candide3.wfm configuration file.<\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-xvrvX6LVUgQ ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"xvrvX6LVUgQ\" data-title=\"Kinect for Windows for Processing - alpha\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/xvrvX6LVUgQ\/maxresdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"1280\" height=\"720\" alt=\"Kinect for Windows for Processing - alpha\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">Kinect for Windows for Processing &#8211; alpha<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\">The latest version of the Kinect for Processing library. You can check out the library, sample source and description at <a href=\"http:\/\/www.magicandlove.com\/blog\/2012\/08\/31\/kinect-in-windows-for-processing-5\/\">http:\/\/www.magicandlove.com\/blog\/2012\/08\/31\/kinect-in-windows-for-processing-5\/<\/a><\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-l058fnGf-u0 ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"l058fnGf-u0\" data-title=\"Kinect for Windows in Processing - Skeleton Tracking Updated\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/l058fnGf-u0\/maxresdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"1280\" height=\"720\" alt=\"Kinect for Windows in Processing - Skeleton Tracking Updated\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">Kinect for Windows in Processing &#8211; Skeleton Tracking Updated<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\"><span class=\"ayg-player-description-less\">This is another demo of the new Kinect for Processing library featuring the skeleton tracking facility, coming closer to the original Microsoft SDK. For details and codes, please go to <span class=\"ayg-player-description-dots\">&#8230;<\/span><\/span><span class=\"ayg-player-description-more\"><a href=\"http:\/\/www.magicandlove.com\/blog\/2012\/08\/29\/kinect-for-windows-in-processing-4\/\">http:\/\/www.magicandlove.com\/blog\/2012\/08\/29\/kinect-for-windows-in-processing-4\/<\/a><\/span><a href=\"#\" class=\"ayg-player-description-toggle-btn\">Show More<\/a><\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-8Yq6mM9NxIM ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"8Yq6mM9NxIM\" data-title=\"Kinect for Windows in Processing - Skeleton Tracking\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/8Yq6mM9NxIM\/maxresdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"1280\" height=\"720\" alt=\"Kinect for Windows in Processing - Skeleton Tracking\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">Kinect for Windows in Processing &#8211; Skeleton Tracking<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\"><span class=\"ayg-player-description-less\">This is the latest development of a Kinect for Windows library in Processing. It implements the skeleton tracking facility with only one single skeleton. For details and codes, please refer <span class=\"ayg-player-description-dots\">&#8230;<\/span><\/span><span class=\"ayg-player-description-more\">to <a href=\"http:\/\/www.magicandlove.com\/blog\/2012\/08\/25\/kinect-for-windows-for-processing-3\/\">http:\/\/www.magicandlove.com\/blog\/2012\/08\/25\/kinect-for-windows-for-processing-3\/<\/a><\/span><a href=\"#\" class=\"ayg-player-description-toggle-btn\">Show More<\/a><\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-L2s6pXfFJGA ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"L2s6pXfFJGA\" data-title=\"Kinect for Processing - Green Screen\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/L2s6pXfFJGA\/maxresdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"1280\" height=\"720\" alt=\"Kinect for Processing - Green Screen\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">Kinect for Processing &#8211; Green Screen<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\"><span class=\"ayg-player-description-less\">This is the second test version of the Kinect for Processing library. Based on the depth information, it creates a green screen for the players. More details and codes are <span class=\"ayg-player-description-dots\">&#8230;<\/span><\/span><span class=\"ayg-player-description-more\">in the post at <a href=\"http:\/\/www.magicandlove.com\/blog\/2012\/08\/07\/kinect-for-windows-in-processing-2\/\">http:\/\/www.magicandlove.com\/blog\/2012\/08\/07\/kinect-for-windows-in-processing-2\/<\/a><\/span><a href=\"#\" class=\"ayg-player-description-toggle-btn\">Show More<\/a><\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-GHCA3JdVpwY ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"GHCA3JdVpwY\" data-title=\"Kinect for Windows SDK in Processing\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/GHCA3JdVpwY\/maxresdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"1280\" height=\"720\" alt=\"Kinect for Windows SDK in Processing\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">Kinect for Windows SDK in Processing<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\">I am writing this new library to use Kinect for Windows SDK in Processing. More details at <a href=\"http:\/\/www.magicandlove.com\/blog\/2012\/06\/22\/kinect-for-windows-in-processing\/\">http:\/\/www.magicandlove.com\/blog\/2012\/06\/22\/kinect-for-windows-in-processing\/<\/a><\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-PASEPxRRViQ ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"PASEPxRRViQ\" data-title=\"Kinect FaceTracker\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/PASEPxRRViQ\/maxresdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"1280\" height=\"720\" alt=\"Kinect FaceTracker\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">Kinect FaceTracker<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\">This is a demo run of the new Kinect for Windows SDK 1.5. It includes a face tracker component. Have fun.<\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-hOTDfXoYxoc ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"hOTDfXoYxoc\" data-title=\"OpenCL Particles System Example in Processing\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/hOTDfXoYxoc\/mqdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"320\" height=\"180\" alt=\"OpenCL Particles System Example in Processing\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">OpenCL Particles System Example in Processing<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\"><span class=\"ayg-player-description-less\">This is a another example of using OpenCL in Processing with the JavaCL binding. It is a re-work of the example in MsaOpenCL. The performance is very acceptable with one <span class=\"ayg-player-description-dots\">&#8230;<\/span><\/span><span class=\"ayg-player-description-more\">million particles. For details and source, please refer to <a href=\"http:\/\/www.magicandlove.com\/blog\/2012\/05\/01\/opencl-particles-system-example-in-processing\/\">http:\/\/www.magicandlove.com\/blog\/2012\/05\/01\/opencl-particles-system-example-in-processing\/<\/a><\/span><a href=\"#\" class=\"ayg-player-description-toggle-btn\">Show More<\/a><\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-uWEprPigBNs ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"uWEprPigBNs\" data-title=\"OpenCL Particles System in Processing\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/uWEprPigBNs\/maxresdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"1280\" height=\"720\" alt=\"OpenCL Particles System in Processing\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">OpenCL Particles System in Processing<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\">This is the JavaCL particles system demo ported to Processing. It uses the 2.0 alpha version of the Processing programming environment. For details and source, you can refer to <a href=\"http:\/\/www.magicandlove.com\/blog\/2012\/04\/29\/opencl-particles-system-with-processing\/\">http:\/\/www.magicandlove.com\/blog\/2012\/04\/29\/opencl-particles-system-with-processing\/<\/a><\/div>\n            <\/div>           \n<\/div>                <\/div>\n                            <div class=\"ayg-video ayg-video-WszoEo6GaTE ayg-col ayg-col-4 ayg-col-sm-3 ayg-col-xs-2\">\n                    <div class=\"ayg-thumbnail\" data-id=\"WszoEo6GaTE\" data-title=\"AR demonstration in Processing\" data-url=\"\">\n    <div class=\"ayg-thumbnail-media\" style=\"--ayg-image-ratio: 16 \/ 9\">\n        <img loading=\"lazy\" src=\"https:\/\/i.ytimg.com\/vi\/WszoEo6GaTE\/mqdefault.jpg\" class=\"ayg-thumbnail-image\" width=\"320\" height=\"180\" alt=\"AR demonstration in Processing\" decoding=\"async\"\/><div class=\"ayg-thumbnail-now-playing\" style=\"display: none;\">Now Playing<\/div><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" fill=\"white\" width=\"40\" height=\"40\" viewBox=\"0 0 24 24\" class=\"ayg-icon ayg-thumbnail-icon-play\" title=\"Play\" aria-label=\"Play\"><path fill-rule=\"evenodd\" d=\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm14.024-.983a1.125 1.125 0 0 1 0 1.966l-5.603 3.113A1.125 1.125 0 0 1 9 15.113V8.887c0-.857.921-1.4 1.671-.983l5.603 3.113Z\" clip-rule=\"evenodd\" \/><\/svg>        \n    <\/div>\n    <div class=\"ayg-thumbnail-caption\">\n         \n            <div class=\"ayg-thumbnail-title\">AR demonstration in Processing<\/div>\n         \n                  \n            <div class=\"ayg-thumbnail-description\" style=\"display: none;\">It is another demonstration of an augmented reality wrapper library for the Processing environment.<\/div>\n            <\/div>           \n<\/div>                <\/div>\n                    <\/div>\n        <ayg-pagination class=\"ayg-pagination\" data-params=\"{&quot;uid&quot;:&quot;d687b7536fcc869fe42177a7eee09709&quot;,&quot;post_id&quot;:3725,&quot;type&quot;:&quot;playlist&quot;,&quot;src&quot;:&quot;https:\\\/\\\/www.youtube.com\\\/playlist?list=PLfW3ifLccmdTtGfF23KPCZ9QYV1-4eAS_&quot;,&quot;order&quot;:&quot;relevance&quot;,&quot;limit&quot;:500,&quot;per_page&quot;:12,&quot;cache&quot;:0,&quot;columns&quot;:4,&quot;thumb_ratio&quot;:56.25,&quot;thumb_title&quot;:1,&quot;thumb_title_length&quot;:0,&quot;thumb_excerpt&quot;:0,&quot;thumb_excerpt_length&quot;:75,&quot;player_description&quot;:1,&quot;total_pages&quot;:2,&quot;paged&quot;:1,&quot;next_page_token&quot;:&quot;EAAaHlBUOkNBd2lFRGs0TkVNMU9EUkNNRGcyUVVFMlJESQ&quot;,&quot;prev_page_token&quot;:&quot;&quot;}\">\n            <div class=\"ayg-pagination-next\">\n            <button type=\"button\" class=\"ayg-btn ayg-pagination-next-btn\" data-type=\"more\">Load More<\/button>\n        <\/div>\n    <\/ayg-pagination>    <\/ayg-theme-classic>\n<\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>It is a collection of demo videos using Processing and my own custom software.<\/p>\n","protected":false},"author":1,"featured_media":3733,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"gallery","meta":{"footnotes":""},"categories":[191],"tags":[62],"class_list":["post-3725","post","type-post","status-publish","format-gallery","has-post-thumbnail","hentry","category-video","tag-processing-org","post_format-post-format-gallery"],"_links":{"self":[{"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/posts\/3725","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/comments?post=3725"}],"version-history":[{"count":1,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/posts\/3725\/revisions"}],"predecessor-version":[{"id":3726,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/posts\/3725\/revisions\/3726"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/media\/3733"}],"wp:attachment":[{"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/media?parent=3725"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/categories?post=3725"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.magicandlove.com\/blog\/wp-json\/wp\/v2\/tags?post=3725"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}