Book Image

Practical Internet of Things with JavaScript

By : Arvind Ravulavaru
Book Image

Practical Internet of Things with JavaScript

By: Arvind Ravulavaru

Overview of this book

In this world of technology upgrades, IoT is currently leading with its promise to make the world a more smarter and efficient place. This book will show you how to build simple IoT solutions that will help you to understand how this technology works. We would not only explore the IoT solution stack, but we will also see how to do it with the world’s most misunderstood programming language - JavaScript. Using Raspberry Pi 3 and JavaScript (ES5/ES6) as the base to build all the projects, you will begin with learning about the fundamentals of IoT and then build a standard framework for developing all the applications covered in this book. You will then move on to build a weather station with temperature, humidity and moisture sensors and further integrate Alexa with it. Further, you will build a smart wearable for understanding the concept of fall detection. You will then extend it with the 'If This Then That' (IFTTT) rules engine to send an email on fall detection. Finally, you will be working with the Raspberry Pi 3 camera module and surveillance with a bit of facial detection using Amazon Rekognition platform. At the end of the book, you will not only be able to build standalone exciting IoT applications but also learn how you can extend your projects to another level.
Table of Contents (17 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Dedication
Preface

MJPEG


Quoting from Wikipedia, https://en.wikipedia.org/wiki/Motion_JPEG.

In multimedia, Motion JPEG (M-JPEG or MJPEG) is a video compression format in which each video frame or interlaced field of a digital video sequence is compressed separately as a JPEG image. Originally developed for multimedia PC applications, M-JPEG is now used by video-capture devices such as digital cameras, IP cameras, and webcams, as well as by non-linear video editing systems. It is natively supported by the QuickTime Player, the PlayStation console, and web browsers such as Safari, Google Chrome, Mozilla Firefox and Microsoft Edge.

As described previously, we are going to capture a series of images, every 100ms apart and stream the image binary data on a topic to the API engine, where we override an existing image with the latest image.

This streaming system is very simple and old-fashioned. There are no rewinds or pauses while streaming. We can always see the last frame.

Now that we have a high level of understanding...