Indexed Binary File Format for Selective Time-Interval Streaming
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing simulation systems for autonomous vehicles require downloading and opening entire ROS bag files to access small portions of data, which is inefficient in terms of time and bandwidth usage.
Innovation Solution
A new file format called 'pocket file' with an indexed data section allows selective streaming by downloading only the necessary data portions based on time intervals, using a header to identify and retrieve specific segments without needing to load the entire file.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the entire bag file is downloaded to access a small portion of data, then complete data access is ensured, but bandwidth consumption and download time increase significantly
Solution Approach 1:
The patent segments the continuous bag file into discrete time-interval segments, each with its own metadata entry in the index. This allows the streaming device to request and download only the specific time intervals needed rather than the entire file, directly reducing bandwidth consumption while maintaining reliable access to the required data portions.
Solution Approach 2:
The system performs preliminary action by pre-generating and storing an index structure that maps time intervals to their corresponding data locations within the bag file. This index is downloaded first and enables the streaming device to identify and request only the necessary data segments without needing to download or parse the entire file, thus reducing bandwidth usage while ensuring complete access to requested portions.
2Reliability
If the entire bag file is downloaded to access a small portion of data, then data availability is guaranteed, but download time increases significantly
Solution Approach 1:
By segmenting the bag file into time-based intervals with corresponding index entries, the system enables the streaming device to download only the specific time intervals required for simulation or playback. This segmentation directly reduces download time while guaranteeing data availability for the requested portions through the index-based retrieval mechanism.
Solution Approach 2:
The system extracts and separates the index structure from the main data payload, allowing the streaming device to first download the compact index (which is much smaller than the full file) and then selectively extract and download only the specific data intervals needed. This extraction approach significantly reduces download time while ensuring complete data availability for the required time periods.
3Loss of energy
If selective data playback is implemented, then bandwidth efficiency improves, but file format complexity increases
Solution Approach 1:
The patent applies segmentation by dividing the bag file into time-based intervals and creating a corresponding index structure. This segmentation enables selective data retrieval that improves bandwidth efficiency, while the regular, structured nature of the segmentation (time-based with consistent metadata fields) keeps the format complexity manageable through systematic organization.
Solution Approach 2:
The index structure serves multiple functions: it acts as a catalog for selective data retrieval, provides timing information for synchronization, and enables random access to any time interval. This multi-functionality improves bandwidth efficiency through selective playback while avoiding additional complexity by combining multiple features into a single unified index structure rather than requiring separate mechanisms for each function.
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.