Mobile Multicast File Decoding With Decode Graph Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The decoding process for MediaFLO™ system non real-time service files imposes a significant burden on handheld mobile devices due to high memory usage, computational power requirements, and slow file storage access, necessitating an efficient decoding algorithm to recover data packets from code packets.
Innovation Solution
A method and apparatus for decoding FDP and FDCP messages using data structures such as code nodes, code graphs, inverse code graphs, data packet decode arrays, and decode order lists, which involve processing FDP messages to extract parameters, executing a solvability algorithm, and reducing code packet payloads to optimize memory and computational resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the standard decoding process is used to recover data packets from code packets, then the data can be successfully recovered, but the memory usage and computational power requirements become excessively high for handheld mobile devices
Solution Approach 1:
The decoding process is segmented into distinct phases: an upward pass that processes code nodes and builds a decode graph, and a downward pass that recovers data packets. This segmentation allows the system to manage complexity by breaking down the monolithic decoding task into smaller, more manageable steps that can be executed with limited resources.
Solution Approach 2:
The upward pass performs preliminary actions by pre-processing code nodes, building the decode graph structure, and identifying relationships between code packets and data packets before the actual data recovery begins. This preliminary work organizes the computational task so that the downward pass can efficiently recover data without redundant computations.
2Reliability
If the decoding process is performed on handheld mobile devices, then data packet recovery is achieved, but the file storage access time increases due to slow access speeds
Solution Approach 1:
The decode graph is segmented into code nodes representing different code packets, with edges indicating relationships. This graphical segmentation allows the algorithm to process only relevant portions of the stored data rather than accessing entire files, reducing storage access time while maintaining recovery reliability.
Solution Approach 2:
The algorithm uses feedback mechanisms where the upward pass informs the downward pass about the structure and relationships in the decode graph. This feedback allows the system to optimize the recovery process by following pre-established pathways, minimizing unnecessary storage accesses.
3Measurement precision
If the Lauritzen/Spiegelhalter Belief Propagation Algorithm is used to solve the counting it twice problem, then code node reducibility is determined, but the computational steps increase
Solution Approach 1:
The algorithm performs periodic actions by executing the upward pass to establish the decode graph structure, then the downward pass to recover data. This periodic structure alternates between preparation phases and execution phases, allowing precise determination of code node reducibility while maintaining overall decoding efficiency through structured repetition.
Data Source
AI summary
A technique for decoding code packets of file delivery protocol (FDP) and file delivery control protocol (FDCP) messages, the FDP messages comprising fields having values used to generate an indices of a data packets, the FDCP messages comprising a value of a minimum number of code packets required, the code packets formed from a linear combination of the data packets of a file fragment, the method includes constructing data structures adapted to decode the code packets of the file fragment, the data structures comprising at least one of code nodes, a code graph, an inverse code graph, a data packet decode array, and a data packet decode order list, processing the FDP messages until a parameters required for decoding are extracted, and populating the inverse code graph with a reference to the code node.


