IP Library Granted Patent US 11,514,949
Granted Patent B2
US 11,514,949 · App. 17/080,552 · Granted Nov 29, 2022

Method and system for long term stitching of video data using a data processing unit

Inventors: Dharmesh M. Patel (Round Rock, TX); Ravikanth Chaganti (Bangalore, IN)
Assignee: Dell Products L.P.
G11B27/10G11B27/031
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 11,514,949
App. No.
17/080,552
Granted
Nov 29, 2022
Kind
B2
Abstract

A method for processing video data is performed by a data processing unit (DPU). The method includes obtaining, by the DPU of an edge device, video data; processing the video data to obtain video data chunks and indexing attributes; generating retention and staging metadata based on the video data chunks and the video processing engine outcomes, and the retention and staging metadata specifies retention and staging information associated with the video data chunks; associating the retention and staging metadata with the video data chunks; and storing the retention and staging metadata and the video data chunks in appropriate storages based on the retention and staging metadata.

Claims (77)

1. A method for processing video data, the method comprising:

obtaining, by a data processing unit (DPU) of an edge device, video data;

processing the video data to obtain video data chunks and video processing engine outcomes, wherein the video processing engine outcomes are obtained using the video data and one or more data analytics models, and wherein the video processing engine outcomes comprise fraud detection video processing engine outcomes and facial recognition video processing engine outcomes;

generating first retention and staging metadata based on a first portion of the video data chunks and a first video processing engine outcome of the video processing engine outcomes associated with the first portion of the video data chunks, wherein the first retention and staging metadata specifies retention and staging information associated with the first portion of the video data chunks;

generating second retention and staging metadata based on a second portion of the video data chunks and a second video processing engine outcome of the video processing engine outcomes associated with the second portion of the video data chunks, wherein the second retention and staging metadata specifies retention and staging information associated with the second portion of the video data chunks;

associating the first retention and staging metadata with the first portion of the video data chunks and the second retention and staging metadata with the second portion of the video data chunks;

storing the first retention and staging metadata and the first portion of the video data chunks in first appropriate storages based on the first retention and staging metadata; and

storing the second retention and staging metadata and the second portion of the video data chunks in second appropriate storages based on the second retention and staging metadata.

2. The method of claim 1 , wherein storing the first retention and staging metadata and the first portion of the video data chunks comprises:

storing the first retention and staging metadata in persistent storage of the edge device; and

storing the first portion of the video data chunks and a copy of the first retention and staging metadata in the first appropriate storages of a backup storage based on the first retention and staging metadata, wherein the backup storage comprises primary storage, secondary storage, and archival storage.

3. The method of claim 2 , further comprising:

receiving a notification that the first portion of the video data chunks were de-staged from the secondary storage to the archival storage; and

updating, in response to the notification, the first retention and staging metadata to reflect a new location of the first portion of the video data chunks.

4. The method of claim 1 , further comprising

making a first determination, by the DPU, that all of the video data chunks are in an archival storage; and

in response to the first determination:

obtaining all of the video data chunks from the archival storage;

stitching, by the DPU, the video data chunks to obtain a video file;

transmitting the video file to the archival storage.

5. The method of claim 4 , further comprising:

after transmitting the video file to the archival storage:

making a second determination that a retention period associated with the video file has expired; and

in response to the second determination:

deleting the video file from the archival storage.

6. The method of claim 1 , wherein the video data comprises at least one selected from a group consisted of:

video data obtained from a video camera; and

video data stored in a backup storage.

7. The method of claim 6 , wherein the video camera is connected to the edge device with a local connection and the backup storage is connected to the edge device with a non-local connection.

8. A system for processing video data, comprising:

a backup storage operatively connected to an edge device comprising:

primary storage,

secondary storage, and

archival storage;

a video camera operatively connected to the edge device and configured to generate video data;

the edge device comprising a data processing unit (DPU), wherein the DPU is configured to perform a method, the method comprising:

obtaining the video data;

processing video data to obtain video data chunks and video processing engine outcomes, wherein the video processing engine outcomes are obtained using the video data and one or more data analytics models, and wherein the video processing engine outcomes comprise fraud detection video processing engine outcomes and facial recognition video processing engine outcomes;

generating first retention and staging metadata based on a first portion of the video data chunks and a first video processing engine outcome of the video processing engine outcomes associated with the first portion of the video data chunks, wherein the first retention and staging metadata specifies retention and staging information associated with the first portion of the video data chunks;

generating second retention and staging metadata based on a second portion of the video data chunks and a second video processing engine outcome of the video processing engine outcomes associated with the second portion of the video data chunks, wherein the second retention and staging metadata specifies retention and staging information associated with the second portion of the video data chunks;

associating the first retention and staging metadata with the first portion of the video data chunks and the second retention and staging metadata with the second portion of the video data chunks;

storing the first retention and staging metadata and the first portion of the video data chunks in first appropriate storages based on the first retention and staging metadata; and

storing the second retention and staging metadata and the second portion of the video data chunks in second appropriate storages based on the second retention and staging metadata.

9. The system of claim 8 , wherein obtaining the video data comprises obtaining the video data obtained from the video camera.

10. The system of claim 8 , wherein obtaining the video data comprises obtaining the video data stored in the backup storage.

11. The system of claim 8 , wherein the video camera is operatively connected to the edge device with a local connection and the backup storage is operatively connected to the edge device with a non-local connection.

12. The system of claim 11 , wherein the local connection is a local wireless connection.

13. The system of claim 11 , wherein the local connection is a local wired connection.

14. The system of claim 11 , wherein the non-local connection is a network connection over a wide area network.

15. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for processing video data, the method comprising:

obtaining, by a data processing unit (DPU) of an edge device, video data;

processing the video data to obtain video data chunks and video processing engine outcomes, wherein the video processing engine outcomes are obtained using the video data and one or more data analytics models, and wherein the video processing engine outcomes comprise fraud detection video processing engine outcomes and facial recognition video processing engine outcomes;

generating first retention and staging metadata based on a first portion of the video data chunks and a first video processing engine outcome of the video processing engine outcomes associated with the first portion of the video data chunks, wherein the first retention and staging metadata specifies retention and staging information associated with the first portion of the video data chunks;

generating second retention and staging metadata based on a second portion of the video data chunks and a second video processing engine outcome of the video processing engine outcomes associated with the second portion of the video data chunks, wherein the second retention and staging metadata specifies retention and staging information associated with the second portion of the video data chunks;

associating the first retention and staging metadata with the first portion of the video data chunks and the second retention and staging metadata with the second portion of the video data chunks;

storing the first retention and staging metadata and the first portion of the video data chunks in first appropriate storages based on the first retention and staging metadata; and

storing the second retention and staging metadata and the second portion of the video data chunks in second appropriate storages based on the second retention and staging metadata.

16. The non-transitory computer readable medium of claim 15 , wherein storing the first retention and staging metadata and the first portion of the video data chunks comprises:

storing the first retention and staging metadata in persistent storage of the edge device; and

storing the first portion of the video data chunks and a copy of the first retention and staging metadata in the first appropriate storages of a backup storage based on the first retention and staging metadata, wherein the backup storage comprises primary storage, secondary storage, and archival storage.

17. The non-transitory computer readable medium of claim 16 , further comprising:

receiving a notification that the first portion of the video data chunks were de-staged from the secondary storage to the archival storage; and

updating, in response to the notification, the first retention and staging metadata to reflect a new location of the first portion of the video data chunks.

18. The non-transitory computer readable medium of claim 15 , wherein the method further comprising

making a first determination, by the DPU, that all of the video data chunks are in an archival storage; and

in response to the first determination:

obtaining all of the video data chunks from the archival storage;

stitching, by the DPU, the video data chunks to obtain a video file;

transmitting the video file to the archival storage.

19. The non-transitory computer readable medium of claim 18 , wherein the method further comprising:

after transmitting the video file to the archival storage:

making a second determination that a retention period associated with the video file has expired; and

in response to the second determination:

deleting the video file from the archival storage.

20. The non-transitory computer readable medium of claim 15 , wherein the video data comprises at least one selected from a group consisted of:

video data obtained from a video camera; and

video data stored in a backup storage.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 27, 2020
From: PATEL, DHARMESH M.; CHAGANTI, RAVIKANTH
To: DELL PRODUCTS LP
Reel/Frame 054185/0813 →