IP Library Granted Patent US 12,592,984
Granted Patent B2
US 12,592,984 · App. 18/403,527 · Granted Mar 31, 2026

Multimodal vehicle sensor fusion and streaming

Inventors: Vinayaka Dattatraya (Mill Creek, WA); Christopher Gorham (Kansas City, MO); Curtis Boushley (Issaquah, WA); Yu Chen (Fremont, CA); Steven Sturkop (Provence-Alpes-Côte, FR)
Assignee: GM Cruise Holdings LLC
H04L67/12H04L47/25G08G1/20
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,592,984
App. No.
18/403,527
Granted
Mar 31, 2026
Kind
B2
Abstract

Systems and methods for encrypting and streaming AV sensor data and AV derived data. In particular, systems and methods are provided for receiving AV sensor data at a streaming platform and providing the received data to multiple endpoints. In some examples, the multiple endpoints are multiple viewers viewing the AV sensor data. In various examples, an AV transmits the AV sensor data to the streaming platform, and the AV sensor data can be transmitted from the streaming platform to multiple endpoints without any effect on AV central processing unit or bandwidth constraints. The AV sensor data can include multiple data streams that are layered and compressed for efficient streaming, and the streaming platform can receive real-time streamed data from the AV even as bandwidth and connection constraints vary. In various examples, the bit rate of the video ingestion from the AV can be changed based on bandwidth availability.

Claims (57)

1 . A method for providing data streams from a vehicle to multiple clients, comprising:

receiving a first data stream request from a first endpoint client including a vehicle identification number and a view identifier indicating a specific camera of a plurality of sensors;

identifying a vehicle corresponding to the vehicle identification number and identifying one or more vehicle sensors corresponding to the view identifier;

assigning the first endpoint client to a streaming server;

receiving a second data stream request from a second endpoint client;

determining that the second data stream request can be fulfilled by the streaming server by determining that the second data stream request specifies the same vehicle identification and the same view identifier as the data stream being received by the streaming server;

allocating, at the streaming server, a first port for receiving a data stream from the vehicle, wherein the data stream includes sensor data from the one or more vehicle sensors;

allocating, at the streaming server, a second port for transmitting the data stream to the first endpoint client;

receiving, at the streaming server, the data stream including the sensor data from the vehicle, wherein the data stream is transmitted from the vehicle at a first bit rate, wherein the first bit rate is variable; and

transmitting the data stream from the streaming server to the first endpoint client at the first bit rate.

2 . The method of claim 1 , further comprising transmitting the data stream from the streaming server to the second endpoint client at the first bit rate.

3 . The method of claim 1 , further comprising changing the first bit rate based on signal bandwidth on the vehicle.

4 . The method of claim 1 , further comprising receiving, at a streaming manager, a heartbeat signal from the streaming server, wherein the heartbeat signal includes information on a streaming server condition and a list of streaming server streams.

5 . The method of claim 1 , further comprising displaying the sensor data in an interface at the first endpoint client.

6 . The method of claim 1 , further comprising:

transmitting first port information to a streaming manager, and

providing, by the streaming manager, the first port information and a streamer IP address to the vehicle.

7 . A system for providing data streams from a vehicle to multiple clients, comprising:

a vehicle including a plurality of sensors, wherein the plurality of sensors generate sensor data, and wherein the plurality of sensors include image sensors and the sensor data includes image data;

a plurality of endpoint clients including a respective plurality of client front ends; and

a streaming platform including:

a streaming manager configured to:

receive a first data stream request from a first endpoint client of the plurality of endpoint clients, wherein the first data stream request includes a vehicle identification and a view identifier indicating a specific camera of the plurality of sensors,

assign the first endpoint client to a streaming server,

receive a second data stream request from a second endpoint client of the plurality of endpoint clients,

determine that the second data stream request can be fulfilled by the streaming server by determining that the second data stream request specifies the same vehicle identification and the same view identifier as the data stream being received by the streaming server, and

assign the second endpoint client to the streaming server; and

the streaming server configured to:

allocate a first port for receiving a data stream from the vehicle, wherein the data stream includes the sensor data,

allocate a second port for transmitting the data stream to the first endpoint client,

receive the data stream including the sensor data from the vehicle, and

transmit the data stream to the first endpoint client and the second endpoint client.

8 . The system of claim 7 , wherein the first port has corresponding first port information, and wherein the streaming server is further configured to transmit the first port information to the streaming manager, and wherein the streaming manager is further configured to provide the first port information and a streaming server IP address to the vehicle.

9 . The system of claim 8 , wherein the streaming server is further configured to provide a streaming server authentication certificate to the vehicle, wherein the vehicle is configured to:

validate the streaming server authentication certificate,

encrypt the data stream including the sensor data, and

transmit an encrypted data stream to the streaming server.

10 . The system of claim 9 , wherein the vehicle is further configured to transmit the encrypted data stream at a first bit rate, wherein the first bit rate is variable, and wherein the first bit rate is based on vehicle network bandwidth.

11 . The system of claim 10 , wherein the streaming server is further configured to transmit a request to the vehicle to adjust the first bit rate.

12 . The system of claim 7 , wherein the second port has corresponding second port information, and wherein the streaming server is further configured to transmit the second port information to the streaming manager, and wherein the streaming manager is further configured to provide the second port information and a streaming server IP address to the endpoint client.

13 . The system of claim 7 , wherein the streaming manager is further configured to determine that the second data stream request can be fulfilled by the streaming server by determining that the second data stream request can be fulfilled using the data stream.

14 . The system of claim 13 , wherein the streaming server is further configured to allocate a third port for transmitting the data stream to the second endpoint client, transmit the data stream to the first endpoint client via the second port, and transmit the data stream to the second endpoint client via the third port.

15 . The system of claim 7 , wherein the streaming manager further includes a streamer database including a list of current streamers including the streaming server, and a list of currently active streams.

16 . One or more non-transitory computer-readable media storing instructions executable to perform operations, the operations comprising:

receiving a first data stream request from a first endpoint client including a vehicle identification number and a view identifier indicating a specific camera of a plurality of sensors;

identifying a vehicle corresponding to the vehicle identification number and identifying one or more vehicle sensors corresponding to the view identifier;

assigning the first endpoint client to a streaming server;

receiving a second data stream request from a second endpoint client;

determining that the second data stream request can be fulfilled by the streaming server by determining that the second data stream request specifies the same vehicle identification and the same view identifier as the data stream being received by the streaming server;

allocating, at the streaming server, a first port for receiving a data stream from the vehicle, wherein the data stream includes sensor data from the one or more vehicle sensors;

allocating, at the streaming server, a second port for transmitting the data stream to the first endpoint client;

receiving, at the streaming server, the data stream including the sensor data from the vehicle, wherein the data stream is transmitted from the vehicle at a first bit rate, wherein the first bit rate is variable; and

transmitting the sensor data from the streaming server to the first endpoint client at the first bit rate.

17 . The one or more non-transitory computer-readable media of claim 16 , the operations further comprising transmitting the data stream from the streaming server to the second endpoint client at the first bit rate.

18 . The one or more non-transitory computer-readable media of claim 16 , the operations further comprising changing the first bit rate based on signal bandwidth on the vehicle.

19 . The one or more non-transitory computer-readable media of claim 16 , the operations further comprising receiving, at a streaming manager, a heartbeat signal from the streaming server, wherein the heartbeat signal includes information on a streaming server condition and a list of streaming server streams.

20 . The one or more non-transitory computer-readable media of claim 16 , the operations further comprising: transmitting first port information to a streaming manager, and providing, by the streaming manager, the first port information and a streamer IP address to the vehicle.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2024
From: DATTATRAYA, VINAYAKA; GORHAM, CHRISTOPHER; BOUSHLEY, CURTIS; CHEN, YU; STURKOP, STEVEN
To: GM CRUISE HOLDINGS LLC
Reel/Frame 066011/0273 →
Continuity (1)
Related Publication 20250220080A1 · Jul 3, 2025
References Cited (17)
US 20020131496A1 · Vasudevan · 2002 [cited by examiner]
US 20020141384A1 · Liu · 2002 [cited by examiner]
US 20140195630A1 · Malik · 2014 [cited by examiner]
US 20160156541A1 · Nistor · 2016 [cited by examiner]
US 20160164761A1 · Sathyanarayana · 2016 [cited by examiner]
US 20170345228A1 · Dibb · 2017 [cited by examiner]
US 20180103355A1 · Hergesheimer · 2018 [cited by examiner]
US 20180120848A1 · Kulferst · 2018 [cited by examiner]
US 20180293906A1 · Chen · 2018 [cited by examiner]
US 20190097793A1 · Nix · 2019 [cited by examiner]
US 20200336541A1 · Naderi Alizadeh · 2020 [cited by examiner]
US 20210366278A1 · Park · 2021 [cited by examiner]
US 20220335153A1 · Herman · 2022 [cited by examiner]
US 20230269566A1 · Spagnolini · 2023 [cited by examiner]
US 20240098143A1 · Mesde · 2024 [cited by examiner]
US 20240098319A1 · Luo · 2024 [cited by examiner]
US 20240348842A1 · Davoodi · 2024 [cited by examiner]