The 7 Things I Know About Cyber Security After 25 Years | April 2024
SenchaCon: DJing with Sencha Touch
1. Stan Bershadskiy, Senior Engineer, Modus Create
@stan229
stan@moduscreate.com
DJing with Sencha
Touch
Monday, July 22, 13
2. Agenda
• Introduce the art form of DJing
• Demonstrate Touch DJ
• Dive into how the Touch DJ app was built
Monday, July 22, 13
3. About Me
• Senior Engineer at Modus
Create
• Started with Sencha GWT,
now focused on Touch
• Author of Sencha Touch
DZone Refcard
• DJ in my spare time
Monday, July 22, 13
23. Web Audio API
• JavaScript API for processing
and synthesizing audio
• Built on Audio Routing Graph
paradigm
• Allows for real time audio
analysis and manipulation
• Used in Games, Music
players, Musical Instrument
emulators and more...
Monday, July 22, 13
32. Node.js Backend
• Serve static Touch app
• Support Track Browser
- Track Listing JSON
- Serve Cover Art for each track
• Serve audio files
• Modules:
- Express
- Socket.io
- Async, Music-metadata, and node-midi
Monday, July 22, 13
33. Why Node.js?
• JavaScript on both ends
• Asynchronous event-driven model
• Extraordinary amount of well written third party modules
Monday, July 22, 13
36. External MIDI Support
• Allow external devices to control
Touch DJ
- iPhone / iPad via TouchOSC or any
other device/software that sends MIDI
• MIDI messages communicated to the
client via WebSockets
• Client uses a MIDI Mapping JSON file
- MIDI Control ID App Event Name
Monday, July 22, 13
41. Web Audio API Resources
• W3 Specification
- https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/
specification.html
• HTML5 Rocks
- http://www.html5rocks.com/en/tutorials/webaudio/intro/
Monday, July 22, 13
42. Lessons Learned
• Mobile Tablet Performance is poor
• Implementing simple audio operations can be complicated
Monday, July 22, 13
43. Conclusion
• Web Audio API is extremely
flexible, powerful and
performant
• Sencha Touch plays well with
external libraries via Custom
Components
• Node.js has a rich module
ecosystem that allows quick
ramp up
Monday, July 22, 13
44. Take the Survey!
• Session Survey
- Available on the SenchaCon
mobile app
- http://app.senchacon.com
• Be Social!
- @SenchaCon
- #SenchaCon
- Add your speaker handle here
or delete this bullet
Monday, July 22, 13