Indexed Pocket File for Selective Time-Interval Streaming
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing simulation systems for autonomous vehicles require downloading and processing entire ROS bag files to access specific data segments, which is inefficient in terms of time and bandwidth usage.
Innovation Solution
A new file format, referred to as a 'pocket file', with an indexed data section that allows selective streaming of data by identifying and downloading only specific intervals of time-based content, reducing the need to load the entire data section.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the entire bag file is downloaded to access specific data segments, then complete data availability is ensured, but time and bandwidth consumption increase significantly
Solution Approach 1:
The patent divides the continuous bag file into discrete time-based segments or chunks that can be independently identified and downloaded. Each segment is marked with timestamps in the index, allowing the system to retrieve only the specific time intervals needed rather than the entire file, thus reducing download time while maintaining data availability for required segments
Solution Approach 2:
The patent pre-generates an index structure that contains timestamp information for all data segments before actual data retrieval. This preliminary indexing action enables the system to quickly identify and locate specific time-based segments without having to process or download the entire file, significantly reducing access time while ensuring data can be reliably retrieved when needed
2Reliability
If the entire bag file is downloaded to access specific data segments, then complete data availability is ensured, but bandwidth consumption increases significantly
Solution Approach 1:
The patent extracts and utilizes timestamp information from the bag file to create an independent index structure. This extraction enables the system to identify and retrieve only the specific data segments corresponding to requested time intervals, removing the need to transfer unnecessary data portions and thereby reducing bandwidth consumption while maintaining availability of required data
Solution Approach 2:
The patent segments the bag file into time-based chunks that can be independently transferred. By dividing the continuous data stream into discrete temporal segments and indexing them by timestamp, the system can download only the specific segments needed for a given query, significantly reducing the total data volume transmitted over the network while ensuring complete availability of the requested time intervals
3Reliability
If the entire data section is loaded to identify specific intervals, then complete data access is ensured, but processing time and memory usage increase
Solution Approach 1:
The patent performs preliminary processing to extract timestamp information and build an index structure before actual data retrieval operations. This pre-computed index allows the system to quickly identify and locate specific time intervals without having to load or scan the entire data section, significantly improving processing speed while ensuring complete access to the required data segments
4Loss of energy
If selective data streaming is implemented without indexing, then bandwidth efficiency is improved, but data location and retrieval become inefficient
Solution Approach 1:
The patent segments the bag file into time-based chunks and creates an index that maps timestamp intervals to their corresponding data locations. This segmentation approach enables efficient selective streaming by allowing the system to directly access specific time segments without transferring unnecessary data, reducing bandwidth consumption while the structured index manages the added complexity of selective retrieval
Data Source
Figure 1
Figure 2A
Figure 2B
AI summary
Provided are systems and methods for selectively streaming content using a new binary file format. In one example, a method may include storing a plurality of binary files, establishing a network communication session between the computing system and a computing terminal via a network, receiving identifiers of one or more intervals of time from the computing terminal via the network communication session, identifying a subset of data within a data section of a binary file stored in memory which is mapped to the identifiers of the one or more intervals of time based on an index within the binary file, and transmitting a stream including the identified subset of data to the computing terminal via the network communication session.