Rolling Buffer Video Streaming Catch-Up Mechanism

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current audio/video recording and communication devices, such as doorbells, do not provide streaming video that includes events prior to the event that triggered the sending of the video, limiting user understanding of the situation.

Innovation Solution

The device continuously records video and stores it in a rolling buffer, allowing streaming to begin from the start of the buffer, with an initial high read rate to catch up to the write rate, then matching the write rate, enabling users to view prior events.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If streaming video begins at the moment of event detection, then real-time streaming is achieved, but events prior to detection are not captured

Engineering Contradiction:
Improvetime of events prior to detectionVSAvoidstreaming start delay
Core Design Contradiction:
Loss of timeVSSpeed

Solution Approach 1:

The system performs preliminary recording by continuously storing video frames in a rolling buffer before an event is detected. This preliminary action ensures that when an event occurs, the streaming can immediately access and play back the pre-recorded frames showing events prior to detection, thus resolving the contradiction between capturing prior events and maintaining real-time streaming.

Inventive Principle:
Principle #10Preliminary action

2Loss of information

If video is continuously recorded and stored in a rolling buffer, then prior events are captured, but memory usage increases

Engineering Contradiction:
Improveinformation about prior eventsVSAvoidmemory storage capacity
Core Design Contradiction:
Loss of informationVSQuantity of substance

Solution Approach 1:

The system implements a rolling buffer mechanism where older video frames are continuously discarded as new frames are written. This allows the system to maintain a limited window of prior events in memory without unbounded growth, resolving the contradiction between capturing prior event information and limiting memory usage. The buffer size is controlled to balance information retention with storage constraints.

Inventive Principle:
Principle #34Discarding and recovering

3Speed

If read rate is initially higher than write rate, then streaming catches up to live video, but data must be read faster than it is written

Engineering Contradiction:
Improvestreaming catch-up speedVSAvoiddata read/write efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The system dynamically adjusts the read rate based on the streaming state. Initially, the read rate is set higher than the write rate to quickly catch up and display pre-recorded content. As streaming progresses and catches up to live video, the read rate dynamically decreases to match the write rate, maintaining synchronization without requiring sustained high-speed reading. This dynamic adjustment resolves the contradiction between catch-up speed and long-term efficiency.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP3516866B1Streaming and storing video for audio/video recording and communication devices
Publication Date: 2021.06.09 AMAZON TECH INC
  • EP3516866B1 patent drawingFigure 1
  • EP3516866B1 patent drawingFigure 2
  • EP3516866B1 patent drawingFigure 3

AI summary

Streaming and storing video for audio/video (A/V) recording and communication devices in accordance with various embodiments of the present disclosure are provided. In one embodiment, a method for an A/V recording and communication device comprises: recording video image data; executing a write operation to write the video image data at a write rate; executing a read operation to read the video image data at a first read rate that is greater than the write rate; continuing to read the video image data at the first read rate until the read operation catches up to the write operation; reading the video image data at a second read rate equal to the write rate; and transmitting streaming video to a client device, wherein a beginning portion of the streaming video is streamed at a first stream rate and thereafter streaming at a second stream rate less than the first stream rate.