Suspended Media Playback Session Context Caching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Mobile devices face challenges in managing resources efficiently due to limited capacity, leading to significant delays when resuming media playback after application context switches, as session-specific resources may not be recoverable without delay, resulting in a frustrating user experience.
Innovation Solution
A method that allows media applications to suspend and resume playback efficiently by retaining session context resources, such as a streaming media buffer and cryptographic keys, and re-establishing connections quickly when priority is restored, enabling immediate resumption of playback without waiting for additional data to be received from the server.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the application releases shared resources when priority shifts to another application, then resource availability for other applications is improved, but playback resumption time increases significantly
Solution Approach 1:
The application performs preliminary actions by caching session context data (including buffer state, connection parameters, and decryption keys) before being suspended. This allows the application to quickly restore its state without needing to reacquire all resources from scratch, thus reducing resumption time while still allowing shared resources to be released for other applications.
Solution Approach 2:
The patent extracts the session context into a separate cacheable data structure that can be independently preserved. By separating the session context from the shared resources, the application can release shared resources while retaining the essential session information needed for quick resumption, resolving the contradiction between resource availability and resumption speed.
2Speed
If the application retains session context resources during suspension, then playback resumption speed is improved, but resource consumption during suspension increases
Solution Approach 1:
The application performs preliminary caching of session context data before suspension occurs. This includes storing buffer state, connection parameters, and decryption keys in a compact format that consumes minimal memory. By preparing this cached state in advance, the application achieves fast resumption without maintaining full resource allocations during suspension.
Solution Approach 2:
The patent applies local quality by selectively retaining only the essential session context data needed for resumption, rather than retaining all application resources. This selective retention minimizes memory consumption during suspension while still enabling rapid playback resumption when the application is restored.
3Ease of operation
If the application re-acquires shared resources upon priority restoration, then resource management fairness is improved, but playback continuity is degraded
Solution Approach 1:
The application performs preliminary caching of session context before suspension, including storing the state of shared resources and connection parameters. Upon restoration, the application can quickly reacquire shared resources and resume playback from the cached state, minimizing interruption to playback continuity while still allowing fair resource management during the suspension period.
Solution Approach 2:
The cached session context acts as an intermediary that bridges the suspension period. It preserves the essential state information needed for playback resumption, allowing the application to temporarily release shared resources for fair management while maintaining the ability to quickly restore playback continuity when resources become available again.
Data Source
AI summary
In an approach, a first application executing on a first computer acquires, one or more resources of the first computer, wherein the one or more resources include one or more shared resources that are shared among applications of the first computer. The first application receives a media stream from a second computer and presents playback of the media stream. In response to detecting that priority within the first computer has shifted to a second application, the first application pauses playback of the media stream and releases the one or more shared resources while retaining one or more remaining resources that relate to a session context. In response to detecting that priority has shifted back to the first application, the first application re-acquires the one or more shared resources and resumes playback of the media stream based on the one or more remaining resources.


