IP Library Granted Patent US 12,033,389
Granted Patent B2
US 12,033,389 · App. 17/649,285 · Granted Jul 9, 2024

Timeline-video relationship processing for alert events

Inventors: Christopher Charles Burns (Santa Clara, CA); George Alban Heitz, III (Mountain View, CA); James Edward Stewart (Mountain View, CA); Cameron Hill (San Francisco, CA); Seungho Yang (Mountain View, CA); Joe Delone Venters (Alameda, CA); William Alex Finlayson (San Mateo, CA); Carsten Hinz (Sunnyvale, CA); Timothy Samuel Psiaki (Duvall, WA); Nathan Scott Klee (Kirkland, WA); Gregory Rourk Nelson (San Bruno, CA); Kevin James Avery (San Francisco, CA); Lawrence W. Neal (Oakland, CA); Martin Davidsson (Redwood City, CA)
Assignee: Google LLC
G06V20/52G06V20/41H04N7/185G06V20/44
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,033,389
App. No.
17/649,285
Granted
Jul 9, 2024
Kind
B2
Abstract

A method at a server system includes: receiving a video stream from a remote video camera, wherein the video stream comprises a plurality of video frames; selecting a plurality of non-contiguous frames from the video stream, the plurality of non-contiguous frames being associated with a predetermined time interval; encoding the plurality of non-contiguous frames as a compressed video segment associated with the time interval; receiving a request from an application running on a client device to review video from the remote video camera for the time interval; and in response to the request, transmitting the video segment to the client device for viewing in the application.

Claims (53)

1. A method, comprising:

receiving a video stream from a remote video camera, the video stream comprises a plurality of video frames;

processing, without user input, the video stream to identify one or more events;

in accordance with the processing, identifying one or more events in the video stream;

identifying a first time interval that includes at least a portion of the identified one or more events and a second time interval that does not include a portion of the identified one or more events;

selecting, without user input, a first portion and a second portion of the plurality of video frames from the video stream, the first portion of the plurality of video frames being associated with the first time interval and having a first predefined segment duration and the second portion of the plurality of video frames being associated with the second time interval and having a second predefined segment duration;

encoding, without user input, the first portion of the plurality of video frames as a first compressed video segment and the second portion of the plurality of video frames as a second compressed video segment; and

transmitting, to a client device for decoding and displaying in an application, the first compressed video segment and the second compressed video segment.

2. The method of claim 1 , wherein the plurality of video frames are evenly spaced in time.

3. The method of claim 1 , wherein the plurality of video frames are variably spaced in time, with first video frames in proximity to an identified event being spaced more closely than second video frames not in proximity to an identified event.

4. The method of claim 1 , wherein the first predefined segment duration is equal to the second predefined segment duration.

5. The method of claim 1 , wherein:

the first portion of the plurality of video frames comprises a first number of video frames;

the second portion of the plurality of video frames comprises a second number of video frames; and

the second number of video frames is less than the first number of video frames.

6. The method of claim 1 , wherein:

the first portion of the plurality of video frames comprises a plurality of contiguous frames; and

the second portion of the plurality of video frames comprises a plurality of non-contiguous frames.

7. The method of claim 1 , further comprising receiving event information from one or more of:

the remote video camera; and

one or more smart devices, wherein identifying one or more events comprises identifying one or more events based on the received event information.

8. A computer system, comprising:

one or more processors; and

memory storing one or more programs to be executed by the one or more processors, the one or more programs comprising instructions for:

receiving a video stream from a remote video camera, the video stream comprises a plurality of video frames;

processing, without user input, the video stream to identify one or more events;

in accordance with the processing, identifying one or more events in the video stream;

identifying a first time interval that includes at least a portion of the identified one or more events and a second time interval that does not include a portion of the identified one or more events;

selecting, without user input, a first portion and a second portion of the plurality of video frames from the video stream, the first portion of the plurality of video frames being associated with a the first time interval and having a first predefined segment duration and the second portion of the plurality of video frames being associated with the second time interval and having a second predefined segment duration;

encoding, without user input, the first portion of the plurality of video frames as a first compressed video segment and the second portion of the plurality of video frames as a second compressed video segment; and

transmitting, to a client device for decoding and displaying in the application, the first compressed video segment and the second compressed video segment.

9. The computer system of claim 8 , wherein a difference between the first time interval and the second time interval is any positive value.

10. The computer system of claim 8 , wherein encoding the first portion of the plurality of video frames as a first compressed video segment includes more frames than the second portion of the plurality of video frames as a second compressed video segment.

11. The computer system of claim 8 , wherein the plurality of video frames are evenly spaced in time.

12. The computer system of claim 8 , wherein the plurality of video frames are variably spaced in time, with video frames in proximity to an identified event being spaced more closely than video frames not in proximity to an identified event.

13. The computer system of claim 8 , further comprising instructions for, prior to the encoding, receiving, from the remote video camera, event information generated by the remote video camera processing the video stream.

14. The computer system of claim 8 , further comprising instructions for, prior to the encoding, receiving event information from one or more smart devices.

15. A non-transitory computer readable storage medium storing instructions, which, when executed by a computer system with one or more processors, cause the computer system to perform operations comprising:

receiving a video stream from a remote video camera, the video stream comprises a plurality of video frames;

processing, without user input, the video stream to identify one or more events;

in accordance with the processing, identifying one or more events in the video stream;

identifying a first time interval that includes at least a portion of the identified one or more events and a second time interval that does not include a portion of the identified one or more events;

selecting, without user input, a first portion and a second portion of the plurality of video frames from the video stream, the first portion of the plurality of video frames being associated with the first time interval and having a first predefined segment duration and the second portion of the plurality of video frames being associated with the second time interval and having a second predefined segment duration;

encoding, without user input, the first portion of the plurality of video frames as a first compressed video segment and the second portion of the plurality of video frames as a second compressed video segment; and

transmitting, to a client device for decoding and displaying in the application, the first compressed video segment and the second compressed video segment.

16. The computer readable storage medium of claim 15 , further comprising instructions, which, when executed by the computer system, cause the computer system to perform operations comprising: prior to the encoding, receiving, from the remote video camera, event information generated by the remote video camera processing the video stream.

17. The computer readable storage medium of claim 15 , further comprising instructions, which, when executed by the computer system, cause the computer system to perform operations comprising: prior to the encoding, receiving event information from one or more smart devices.

18. The computer readable storage medium of claim 15 , wherein transmitting the stored first compressed video segment or the stored second compressed video segment to the client device comprises transmitting:

a plurality of frames of an immediately preceding video segment; and

a plurality of frames of an immediately succeeding video segment.

19. The computer readable storage medium of claim 15 , wherein transmitting the compressed video segment to the client device comprises transmitting the plurality of frames corresponding to the compressed video segment associated with a requested predetermined time interval.

20. The computer readable storage medium of claim 19 , wherein the compressed video segment is encoded using a H.264 video coding format, the compressed video segment comprising i-frames and p-frames; and the computer readable storage medium further comprising instructions, which, when executed by the computer system, cause the computer system to perform operations comprising:

in response to a user ceasing to scrub through the video from the remote video camera at the client device, transmitting an i-frame of the compressed video segment to the client device for display at the client device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2022
From: BURNS, CHRISTOPHER CHARLES; HEITZ, GEORGE ALBAN, III; STEWART, JAMES EDWARD; HILL, CAMERON; YANG, SEUNGHO; VENTERS, JOE DELONE; FINLAYSON, WILLIAM ALEX; HINZ, CARSTEN; PSIAKI, TIMOTHY SAMUEL; KLEE, NATHAN SCOTT; NELSON, GREGORY ROURK; AVERY, KEVIN JAMES; NEAL, LAWRENCE W.; DAVIDSSON, MARTIN
To: GOOGLE INC.
Reel/Frame 058814/0027 →
CHANGE OF NAME Recorded Jan 28, 2022
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 058902/0153 →
Continuity (2)
Continuation 15335396 · Oct 26, 2016
Related Publication 20220215664A1 · Jul 7, 2022
Cited By (1)
US 12,271,576