Media File Synchronization During Active Writing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for synchronizing media files between devices face challenges when the file is still being written, leading to difficulties in confirming the synchronized copies are identical, as checksums may not match, and race conditions can occur during file growth.
Innovation Solution
A method for synchronizing media files between two computing devices that begins before the file is finalized, involving determining modifications to the descriptor portion, sending relevant media elements to the second device, and updating the second copy of the file using synchronization data, while avoiding race conditions by storing a last-updated version of the descriptor portion and preventing reading of partial updates until completion.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If synchronization begins while the media file is still being written, then synchronization speed is improved, but file consistency and reliability deteriorate due to race conditions and incomplete writes
Solution Approach 1:
The patent applies preliminary action by storing the descriptor portion and file header to a temporary location before the media file writing is complete. This allows the synchronization process to begin with available data while the file is still being written, without risking corruption from incomplete writes. The temporary storage isolates the synchronization data from ongoing write operations.
Solution Approach 2:
The patent introduces an intermediary mechanism through temporary storage locations for the descriptor portion and file header. These intermediaries buffer the data between the writing process and the synchronization process, allowing both operations to proceed concurrently without interfering with each other's integrity.
2Measurement precision
If the descriptor portion is updated during synchronization, then synchronization accuracy is improved, but race conditions worsen due to concurrent modifications
Solution Approach 1:
The patent stores the descriptor portion and file header to a temporary location before synchronization begins. This preliminary action captures the state of these critical file components at a known point in time, ensuring that synchronization operates on a consistent snapshot rather than on data that may change during the process.
Solution Approach 2:
The patent segments the media file into distinct components: the descriptor portion, the file header, and the body. By separating these components and storing them in different locations during synchronization, the patent allows independent handling of each segment, reducing the risk of race conditions affecting the entire file structure.
3Reliability
If synchronization waits for file finalization, then file consistency is improved, but synchronization time increases due to waiting for complete writes
Solution Approach 1:
The patent performs preliminary storage of the descriptor portion and file header to temporary locations before the media file writing is complete. This allows the synchronization process to start immediately with the available data, eliminating the need to wait for the entire file to be written while still maintaining consistency through the temporary storage mechanism.
Solution Approach 2:
The patent enables continuous synchronization operation by allowing the process to proceed while the media file is still being written. The temporary storage of critical components ensures that the synchronization action continues uninterrupted, rather than pausing to wait for file finalization.
Data Source
AI summary
Disclosed herein are methods of synchronizing a media file between two computing devices. The media file includes a file header, at least one descriptor portion enabling reading of media elements in the body portion and at least one file body in which media elements are stored. The synchronizing of the media file occurs between a first copy of the media file stored at a first computing device and a second copy of the media file stored on a second computing device and the synchronization of the second copy of the media file with the first copy of the media file commences before finalization of the first copy of the media file and continues at least while one or more media elements are being written to a file body of the first copy of the media file at the first computing device. Also disclosed are methods of sending synchronization data to the second computing device and updating the second copy of the media file at the second computing device.


