SlideShare une entreprise Scribd logo
1  sur  8
Télécharger pour lire hors ligne
Kenley	
  Cheung	
  
Rensselaer	
  Center	
  for	
  Open	
  Source	
  
               So6ware	
  
Introduc:on	
  
•  Concerto	
  is	
  an	
  open	
  source	
  digital	
  signage	
  
   system	
  used	
  here	
  at	
  RPI.	
  
•  Concerto	
  has	
  operates	
  on	
  a	
  client-­‐server	
  
   model.	
  
    –  Clients	
  (Concerto	
  Player	
  instances)	
  download	
  
       content	
  from	
  the	
  content	
  server	
  and	
  display	
  
       them.	
  
    –  Concerto	
  Player	
  currently	
  displays	
  content	
  in	
  a	
  
       carousel-­‐like	
  fashion.	
  
    –  No	
  interac:vity	
  with	
  the	
  viewer.	
  
Introduc:on	
  
•  Concerto	
  Con	
  Moto	
  makes	
  digital	
  signage	
  more	
  
   interac:ve	
  with	
  mo:on!	
  
    –  Con	
  moto	
  means	
  “with	
  mo:on”	
  
    –  Keeping	
  with	
  the	
  use	
  music	
  terminolog,	
  it’s	
  an	
  appropriate	
  
       name	
  for	
  a	
  product.	
  
•  Con	
  Moto	
  u:lizes	
  the	
  Xbox	
  Kinect	
  to	
  deliver	
  gesture	
  
   detec:on	
  and	
  recogni:on.	
  
    –  U:lizes	
  three	
  open-­‐source	
  libraries	
  
         •  Libfreenect	
  –	
  open-­‐source,	
  cross-­‐plaRorm	
  libusb-­‐based	
  driver	
  for	
  
            the	
  Kinect.	
  
         •  OpenCV	
  –	
  open-­‐source	
  computer	
  vision	
  library	
  
         •  DepthJS	
  –	
  open-­‐source	
  Kinect-­‐JavaScript	
  bridge	
  with	
  u:lizing	
  a	
  
            built-­‐in	
  gesture	
  detec:on	
  engine	
  
What’s	
  been	
  done	
  so	
  far?	
  
What’s	
  been	
  done	
  so	
  far?	
  
•  Numerous	
  DepthJS	
  enhancements	
  and	
  fixes	
  
     –  Research	
  project	
  at	
  MIT	
  Media	
  Lab.	
  
     –  Upstream	
  code	
  didn’t	
  work.	
  Needed	
  a	
  lot	
  of	
  tender	
  loving	
  care	
  to	
  get	
  it	
  
        working!	
  
     –  Theore:cal	
  support	
  for	
  Linux.	
  
            •  “It	
  should	
  work,	
  but	
  we	
  haven’t	
  tested	
  it	
  in	
  a	
  while.”	
  
     –  Needed	
  several	
  modifica:ons	
  in	
  order	
  to	
  work	
  
            •  Created	
  Linux	
  build	
  script	
  
            •  Rewrote	
  parts	
  of	
  the	
  code	
  to	
  work	
  against	
  a	
  new	
  libfreenect	
  (Kinect	
  driver)	
  API	
  (fun!)	
  
                     –  Received	
  assistance	
  from	
  the	
  #OpenKinect	
  channel	
  on	
  FreeNode.	
  
            •  Learned	
  how	
  to	
  build	
  shared	
  libraries	
  on	
  Linux	
  (even	
  more	
  fun!)	
  
                     –  Learned	
  how	
  the	
  compiler	
  works	
  to	
  produce	
  shared	
  libraries.	
  
                     –  Sta:cally	
  linked	
  libfreenect	
  and	
  OpenCV	
  -­‐	
  allows	
  us	
  to	
  distribute	
  DepthJS	
  binaries	
  with	
  no	
  
                        addi:onal	
  dependencies!	
  
            •  Modified	
  Chrome	
  extension	
  to	
  detect	
  and	
  load	
  the	
  appropriate	
  shared	
  library	
  for	
  a	
  
               supported	
  plaRorm.	
  
            •  Fixed	
  bug	
  where	
  hand	
  gesture	
  events	
  were	
  not	
  being	
  triggering	
  JavaScript	
  events.	
  
What’s	
  been	
  done	
  so	
  far?	
  
•  Framework	
  for	
  Concerto	
  Con	
  Moto	
  	
  
   –  LiveUSB	
  +	
  Chromium	
  +	
  Packaged	
  Chrome	
  
      Applica:on	
  
   –  Concerto	
  Player	
  replacement	
  
       •  No	
  longer	
  requires	
  internet	
  connec:on	
  to	
  ini:alize.	
  
       •  Classic	
  exponen:al	
  back-­‐off	
  when	
  network	
  disrup:ons	
  
          occur.	
  
       •  Skeleton	
  code	
  for	
  con	
  moto	
  overlay	
  checked	
  in.	
  
       •  UI	
  mockup	
  of	
  Concerto	
  con	
  moto	
  overlay	
  
What’s	
  in	
  store…	
  
•  Concerto	
  Player	
  configura:on	
  
   –  Powered	
  by	
  HTML5	
  localStorage	
  
   –  Set	
  Concerto	
  server	
  endpoint	
  
       •  Not	
  all	
  Concerto	
  users	
  are	
  at	
  RPI	
  
       •  One-­‐size-­‐fits-­‐all	
  Concerto	
  Player	
  –	
  No	
  need	
  to	
  generate	
  
          new	
  disk	
  images	
  
   –  Choice	
  between	
  overlay	
  or	
  simple	
  control	
  of	
  
      screen	
  content	
  
•  Integra:on	
  with	
  exis:ng	
  Concerto	
  screen.js	
  
   and	
  Concerto	
  client	
  infrastructure	
  
What’s	
  in	
  store…	
  
•  Demo	
  :me!	
  

Contenu connexe

Tendances

Tendances (19)

.Net Core Blimey! (16/07/2015)
.Net Core Blimey! (16/07/2015).Net Core Blimey! (16/07/2015)
.Net Core Blimey! (16/07/2015)
 
.NET Core Blimey! (Shropshire Devs Mar 2016)
.NET Core Blimey! (Shropshire Devs Mar 2016).NET Core Blimey! (Shropshire Devs Mar 2016)
.NET Core Blimey! (Shropshire Devs Mar 2016)
 
.Net standard 2.0
.Net standard 2.0.Net standard 2.0
.Net standard 2.0
 
CIF16: Unikernels, Meet Docker! Containing Unikernels (Richard Mortier, Anil ...
CIF16: Unikernels, Meet Docker! Containing Unikernels (Richard Mortier, Anil ...CIF16: Unikernels, Meet Docker! Containing Unikernels (Richard Mortier, Anil ...
CIF16: Unikernels, Meet Docker! Containing Unikernels (Richard Mortier, Anil ...
 
DevOps Fest 2020. Даніель Яворович. Data pipelines: building an efficient ins...
DevOps Fest 2020. Даніель Яворович. Data pipelines: building an efficient ins...DevOps Fest 2020. Даніель Яворович. Data pipelines: building an efficient ins...
DevOps Fest 2020. Даніель Яворович. Data pipelines: building an efficient ins...
 
Advanced Docker Developer Workflows on MacOS X and Windows
Advanced Docker Developer Workflows on MacOS X and WindowsAdvanced Docker Developer Workflows on MacOS X and Windows
Advanced Docker Developer Workflows on MacOS X and Windows
 
Docker Online Meetup #31: Unikernels
Docker Online Meetup #31: UnikernelsDocker Online Meetup #31: Unikernels
Docker Online Meetup #31: Unikernels
 
Cross platform dotnet development using dotnet core
Cross platform dotnet development using dotnet coreCross platform dotnet development using dotnet core
Cross platform dotnet development using dotnet core
 
Switching from Puppet to Ansible
Switching from Puppet to AnsibleSwitching from Puppet to Ansible
Switching from Puppet to Ansible
 
PROCESS WARP
PROCESS WARPPROCESS WARP
PROCESS WARP
 
Porting Tizen-IVI 3.0 to an ARM based SoC Platform
Porting Tizen-IVI 3.0 to an ARM based SoC PlatformPorting Tizen-IVI 3.0 to an ARM based SoC Platform
Porting Tizen-IVI 3.0 to an ARM based SoC Platform
 
Virtual Machines and Docker
Virtual Machines and DockerVirtual Machines and Docker
Virtual Machines and Docker
 
F19 slidedeck (OpenStack^H^H^H^Hhift, what the)
F19 slidedeck (OpenStack^H^H^H^Hhift, what the)F19 slidedeck (OpenStack^H^H^H^Hhift, what the)
F19 slidedeck (OpenStack^H^H^H^Hhift, what the)
 
A New Approach Towards Web-based IDEs
A New Approach Towards Web-based IDEsA New Approach Towards Web-based IDEs
A New Approach Towards Web-based IDEs
 
Introduction to Containers and Docker
Introduction to Containers and DockerIntroduction to Containers and Docker
Introduction to Containers and Docker
 
Dot Net Core
Dot Net CoreDot Net Core
Dot Net Core
 
Python Experience in KKBOX Group
Python Experience in KKBOX GroupPython Experience in KKBOX Group
Python Experience in KKBOX Group
 
OS Mélange
OS MélangeOS Mélange
OS Mélange
 
Deploying vn fs with kubernetes pods and vms
Deploying vn fs with kubernetes pods and vmsDeploying vn fs with kubernetes pods and vms
Deploying vn fs with kubernetes pods and vms
 

En vedette (7)

Jumpstart 4 22-11
Jumpstart 4 22-11Jumpstart 4 22-11
Jumpstart 4 22-11
 
Ross vehicular traffic model 2
Ross vehicular traffic model 2Ross vehicular traffic model 2
Ross vehicular traffic model 2
 
Fire department-management-presentation-2
Fire department-management-presentation-2Fire department-management-presentation-2
Fire department-management-presentation-2
 
Rcos intro-2
Rcos intro-2Rcos intro-2
Rcos intro-2
 
Cervitor presentation v4
Cervitor presentation v4Cervitor presentation v4
Cervitor presentation v4
 
Anywhere sync
Anywhere syncAnywhere sync
Anywhere sync
 
Fit botpresentation
Fit botpresentationFit botpresentation
Fit botpresentation
 

Similaire à Concerto conmoto

Uklug2011.lotus.on.linux.report.technical.edition.v1.0
Uklug2011.lotus.on.linux.report.technical.edition.v1.0Uklug2011.lotus.on.linux.report.technical.edition.v1.0
Uklug2011.lotus.on.linux.report.technical.edition.v1.0
dominion
 
Linux Distribution Collaboration …on a Mainframe!
Linux Distribution Collaboration …on a Mainframe!Linux Distribution Collaboration …on a Mainframe!
Linux Distribution Collaboration …on a Mainframe!
All Things Open
 

Similaire à Concerto conmoto (20)

Concerto motionsummer2011week1
Concerto motionsummer2011week1Concerto motionsummer2011week1
Concerto motionsummer2011week1
 
WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...
WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...
WebRTC Standards & Implementation Q&A - The Internals of WebRTC Browsers Impl...
 
Linux on Azure - Session TechDays 2014 par Blaise Vignon (Microsoft), Julien ...
Linux on Azure - Session TechDays 2014 par Blaise Vignon (Microsoft), Julien ...Linux on Azure - Session TechDays 2014 par Blaise Vignon (Microsoft), Julien ...
Linux on Azure - Session TechDays 2014 par Blaise Vignon (Microsoft), Julien ...
 
Linux: embarquement immédiat pour le cloud
Linux: embarquement immédiat pour le cloudLinux: embarquement immédiat pour le cloud
Linux: embarquement immédiat pour le cloud
 
PHP Unconference Continuous Integration
PHP Unconference Continuous IntegrationPHP Unconference Continuous Integration
PHP Unconference Continuous Integration
 
BigBlueButton Platform Components
BigBlueButton Platform ComponentsBigBlueButton Platform Components
BigBlueButton Platform Components
 
AI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with KnativeAI & Machine Learning Pipelines with Knative
AI & Machine Learning Pipelines with Knative
 
Moving microsoft .net applications one container at a time
 Moving microsoft .net applications one container at a time  Moving microsoft .net applications one container at a time
Moving microsoft .net applications one container at a time
 
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWERContinuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
 
JS digest. Mid-Summer 2017
JS digest. Mid-Summer 2017JS digest. Mid-Summer 2017
JS digest. Mid-Summer 2017
 
Encode Club Hackathon
Encode Club Hackathon  Encode Club Hackathon
Encode Club Hackathon
 
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a TimeAWS Summit Auckland - Moving MS .NET Applications One Container at a Time
AWS Summit Auckland - Moving MS .NET Applications One Container at a Time
 
Rich Web Applications with Aspenware
Rich Web Applications with AspenwareRich Web Applications with Aspenware
Rich Web Applications with Aspenware
 
Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018Matrix, The Year To Date, Ben Parsons, TADSummit 2018
Matrix, The Year To Date, Ben Parsons, TADSummit 2018
 
Uklug2011.lotus.on.linux.report.technical.edition.v1.0
Uklug2011.lotus.on.linux.report.technical.edition.v1.0Uklug2011.lotus.on.linux.report.technical.edition.v1.0
Uklug2011.lotus.on.linux.report.technical.edition.v1.0
 
Linux Distribution Collaboration …on a Mainframe!
Linux Distribution Collaboration …on a Mainframe!Linux Distribution Collaboration …on a Mainframe!
Linux Distribution Collaboration …on a Mainframe!
 
Wwx2014 - Todd Kulick "Shipping One Million Lines of Haxe to (Over) One Milli...
Wwx2014 - Todd Kulick "Shipping One Million Lines of Haxe to (Over) One Milli...Wwx2014 - Todd Kulick "Shipping One Million Lines of Haxe to (Over) One Milli...
Wwx2014 - Todd Kulick "Shipping One Million Lines of Haxe to (Over) One Milli...
 
Php on Windows
Php on WindowsPhp on Windows
Php on Windows
 
Highlights from MS build\\2016 Conference
Highlights from MS build\\2016 ConferenceHighlights from MS build\\2016 Conference
Highlights from MS build\\2016 Conference
 
Building GUI App with Electron and Lisp
Building GUI App with Electron and LispBuilding GUI App with Electron and Lisp
Building GUI App with Electron and Lisp
 

Plus de mskmoorthy (20)

Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11Crowdsourcing for geoint-11.11.11
Crowdsourcing for geoint-11.11.11
 
Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011Shuttle trackersecondpresentationfall2011
Shuttle trackersecondpresentationfall2011
 
Mobile shuttle tracker_fall_2011_first_present
Mobile shuttle tracker_fall_2011_first_presentMobile shuttle tracker_fall_2011_first_present
Mobile shuttle tracker_fall_2011_first_present
 
Rcos presentation 9-23-2011
Rcos presentation 9-23-2011Rcos presentation 9-23-2011
Rcos presentation 9-23-2011
 
Rcos presentation
Rcos presentationRcos presentation
Rcos presentation
 
Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011Dynamorio rpioss-aug2011
Dynamorio rpioss-aug2011
 
Auto scheduler presentation_2
Auto scheduler presentation_2Auto scheduler presentation_2
Auto scheduler presentation_2
 
Second presentation idea_bank
Second presentation idea_bankSecond presentation idea_bank
Second presentation idea_bank
 
Scrutiny 2
Scrutiny 2Scrutiny 2
Scrutiny 2
 
Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011
 
Sean austin uir-2
Sean austin uir-2Sean austin uir-2
Sean austin uir-2
 
Nexus2 7-22-1011
Nexus2 7-22-1011Nexus2 7-22-1011
Nexus2 7-22-1011
 
Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011Rpi planner geoffrey_wright_7-22-2011
Rpi planner geoffrey_wright_7-22-2011
 
Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011Flagship safety, hfoss-7-22-2011
Flagship safety, hfoss-7-22-2011
 
Olympus pesentation2
Olympus pesentation2Olympus pesentation2
Olympus pesentation2
 
Observatory 7 15-11
Observatory 7 15-11Observatory 7 15-11
Observatory 7 15-11
 
8.7.2011 agml
8.7.2011 agml8.7.2011 agml
8.7.2011 agml
 
Koala pres1
Koala pres1Koala pres1
Koala pres1
 
Scrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdfScrutiny 07-01-2011.pdf
Scrutiny 07-01-2011.pdf
 
Koala pres1
Koala pres1Koala pres1
Koala pres1
 

Dernier

Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
ciinovamais
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
QucHHunhnh
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
Chris Hunter
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
MateoGardella
 

Dernier (20)

Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
psychiatric nursing HISTORY COLLECTION .docx
psychiatric  nursing HISTORY  COLLECTION  .docxpsychiatric  nursing HISTORY  COLLECTION  .docx
psychiatric nursing HISTORY COLLECTION .docx
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
Ecological Succession. ( ECOSYSTEM, B. Pharmacy, 1st Year, Sem-II, Environmen...
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 

Concerto conmoto

  • 1. Kenley  Cheung   Rensselaer  Center  for  Open  Source   So6ware  
  • 2. Introduc:on   •  Concerto  is  an  open  source  digital  signage   system  used  here  at  RPI.   •  Concerto  has  operates  on  a  client-­‐server   model.   –  Clients  (Concerto  Player  instances)  download   content  from  the  content  server  and  display   them.   –  Concerto  Player  currently  displays  content  in  a   carousel-­‐like  fashion.   –  No  interac:vity  with  the  viewer.  
  • 3. Introduc:on   •  Concerto  Con  Moto  makes  digital  signage  more   interac:ve  with  mo:on!   –  Con  moto  means  “with  mo:on”   –  Keeping  with  the  use  music  terminolog,  it’s  an  appropriate   name  for  a  product.   •  Con  Moto  u:lizes  the  Xbox  Kinect  to  deliver  gesture   detec:on  and  recogni:on.   –  U:lizes  three  open-­‐source  libraries   •  Libfreenect  –  open-­‐source,  cross-­‐plaRorm  libusb-­‐based  driver  for   the  Kinect.   •  OpenCV  –  open-­‐source  computer  vision  library   •  DepthJS  –  open-­‐source  Kinect-­‐JavaScript  bridge  with  u:lizing  a   built-­‐in  gesture  detec:on  engine  
  • 4. What’s  been  done  so  far?  
  • 5. What’s  been  done  so  far?   •  Numerous  DepthJS  enhancements  and  fixes   –  Research  project  at  MIT  Media  Lab.   –  Upstream  code  didn’t  work.  Needed  a  lot  of  tender  loving  care  to  get  it   working!   –  Theore:cal  support  for  Linux.   •  “It  should  work,  but  we  haven’t  tested  it  in  a  while.”   –  Needed  several  modifica:ons  in  order  to  work   •  Created  Linux  build  script   •  Rewrote  parts  of  the  code  to  work  against  a  new  libfreenect  (Kinect  driver)  API  (fun!)   –  Received  assistance  from  the  #OpenKinect  channel  on  FreeNode.   •  Learned  how  to  build  shared  libraries  on  Linux  (even  more  fun!)   –  Learned  how  the  compiler  works  to  produce  shared  libraries.   –  Sta:cally  linked  libfreenect  and  OpenCV  -­‐  allows  us  to  distribute  DepthJS  binaries  with  no   addi:onal  dependencies!   •  Modified  Chrome  extension  to  detect  and  load  the  appropriate  shared  library  for  a   supported  plaRorm.   •  Fixed  bug  where  hand  gesture  events  were  not  being  triggering  JavaScript  events.  
  • 6. What’s  been  done  so  far?   •  Framework  for  Concerto  Con  Moto     –  LiveUSB  +  Chromium  +  Packaged  Chrome   Applica:on   –  Concerto  Player  replacement   •  No  longer  requires  internet  connec:on  to  ini:alize.   •  Classic  exponen:al  back-­‐off  when  network  disrup:ons   occur.   •  Skeleton  code  for  con  moto  overlay  checked  in.   •  UI  mockup  of  Concerto  con  moto  overlay  
  • 7. What’s  in  store…   •  Concerto  Player  configura:on   –  Powered  by  HTML5  localStorage   –  Set  Concerto  server  endpoint   •  Not  all  Concerto  users  are  at  RPI   •  One-­‐size-­‐fits-­‐all  Concerto  Player  –  No  need  to  generate   new  disk  images   –  Choice  between  overlay  or  simple  control  of   screen  content   •  Integra:on  with  exis:ng  Concerto  screen.js   and  Concerto  client  infrastructure  
  • 8. What’s  in  store…   •  Demo  :me!