This guide will provide a high-level overview of where to get started with integrating a camera with the WebCOOS data infrastructure.
Who We Are¶
This project, Webcams for Coastal Observations and Operational Support (WebCOOS), will develop a webcam coastal observing network for quantitative scientific analysis, public safety, and resource management for coastal municipalities.
To accomplish this, standardized data processing and management methodology will be established to provide stakeholders such as lifeguards, emergency managers, and coastal managers with actionable information from webcam videos.
The WebCOOS project partners with Axiom Data Science (AXDS) to provide camera ingestion and stream hosting solutions. AXDS is an informatics and software development firm focused on developing scalable solutions which can be leveraged across a variety of users, clients and institutions in order to make the best tools for data management, integration, and visualization. AXDS supports a variety of federal, private, academic and non-governmental organizations managing and conducting research in the ecological, geological and ocean sciences.
The WebCOOS project supports the following ingestion pathways for camera devices:
RTSP and RTMP Streaming¶
The WebCOOS project supports the ingestion of real-time video stream data from devices that support RTSP (Real Time Streaming Protocol) or RTMP (Real Time Messaging Protocol). These protocols allow Axiom to capture a live video stream, which can then be reused to produce the following:
Archived, timestamped 10 minute long video files captured from the captured video stream, which can be re-formatted, compressed, or otherwise transformed to suit data consumers. These video files are archived in the WebCOOS data system and made available through the WebCOOS distribution APIs and website.
Archived, timestamped images files taken every minute from the captured video stream. These image files are archived in the WebCOOS data system and made available through the WebCOOS distribution APIs and website.
Streamed, live video consumable by adaptive streaming clients (video playing devices that can detect and choose the best video quality for their hardware and bandwidth). WebCOOS offers streaming in HLS and DASH for every camera device stream being captured. The streaming video from the feeds can be viewed in the WebCOOS website or integrated easily with external applications and websites.
See the requirements section for Streaming to start identifying the necessary information for RTSP stream ingestion.
If you have an RTSP or RTMP-enabled camera that you would like to integrate with the WebCOOS data system please get in touch!
The WebCOOS project supports the ingestion of video clips or still images from data providers. Providers can upload video clips of any length (i.e. 10 minute intervals) and still images from a camera taken at any frequency (i.e. every 15 minutes). These video and image files are archived in the WebCOOS data system and made available through the WebCOOS distribution APIs and website. This type of data ingestion is best for historical cameras no longer producing data or cameras that need to store data locally on the device or server and upload periodically due to bandwidth issues at the install location.
Uploads made to WebCOOS are done through a S3 API. In addition to some vendor cameras supporting uploading directly to an S3 API out-of-the-box, WebCOOS can provide example programs to assist in the upload of archive video and image data.
See the requirements for Uploading to start identifying the necessary information for RTSP stream ingestion.
If you have video or image files from cameras you would like to upload into the WebCOOS data system please get in touch!
External S3 Indexing¶
If you have a large collection of image or video data already under your management and have the ability to host it through an S3 compatible API, WebCOOS may be able to externally index all of your video and image data and provide access to it through the WebCOOS data system. Please see the requirements for External Indexing and get in touch for more information!