Skip to content

Pre-requisites for Installation ​

Before installing NestMTX, it’s important to ensure that you have the necessary credentials and tools ready to facilitate a smooth setup process.

While not strictly required for installation, having the following credentials prepared will streamline the setup and configuration of NestMTX:

  • Google Cloud Platform OAuth Credentials: Required to authenticate with Google services.
  • Device Access Console Project ID: Necessary for managing and accessing devices through the Google Smart Device Management API.

These credentials are essential for setting up device access and ensuring that your Google/Nest cameras are correctly integrated with NestMTX.

Optional Configurations ​

NestMTX offers several optional configurations to enhance its functionality. To take full advantage of these features, you will need to configure the relevant credentials:

  • Custom Database: If you want to use a custom database, you’ll need the appropriate credentials for database access.
  • MQTT API Support: For users intending to use MQTT for event handling and notifications, ensure that your MQTT broker credentials are configured.
  • Twilio for ICE: If you plan to use Twilio for ICE (Interactive Connectivity Establishment) in WebRTC, you’ll need your Twilio account credentials.

Installation from Source ​

If you choose to install and run NestMTX from source, the following software is required:

  • Node.js: Node.js v21.x is required to run NestMTX. Ensure that it is installed and properly configured on your system.
  • GStreamer: gst-launch-1.0 is needed for managing media streams, especially for WebRTC connections. Specifically, you’ll need GStreamer with support for the following elements:
    • udpsrc, rtpjitterbuffer, rtph264depay, h264parse, opusdec, audioconvert, avenc_aac, rtspclientsink
  • FFmpeg: FFmpeg is used for handling and transcoding media streams, particularly for RTSP connections. Ensure that FFmpeg is installed with support for the following codecs and features:
    • libx264 for H.264 video encoding
    • aac for AAC audio encoding
    • Other required features include support for rtsp, tcp, udp, and low-latency streaming.