Media Player Fast Stream Switching via Buffer Offset

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Media players often experience non-smooth viewing experiences due to frame drops and buffer issues when switching between media streams, particularly when CPU resources are low or when switching from windowed to full-screen mode, as they need to play out the entire buffer before switching to a higher quality stream.

Innovation Solution

Implementing a method that allows for fast switching between media streams by specifying a switching time offset within the client's buffer, enabling the media player to switch without playing the entire buffer, and allowing for adjustments based on changes in playback bandwidth and stream quality.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a media player uses a large video buffer to prevent buffer under-runs, then viewing smoothness is improved, but switching time between media streams increases

Engineering Contradiction:
Improveviewing smoothnessVSAvoidswitching time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-buffering content from the second media stream before a switch is requested. When a switch request is received, the player can immediately switch to the pre-buffered content without waiting to play out the entire first buffer, thereby reducing switching time while maintaining viewing smoothness.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts buffer management based on the switching state. It maintains a first buffer for current playback and a second buffer for upcoming content, allowing flexible switching between them. This dynamic buffer management enables smooth transitions while preventing buffer under-runs during and after switches.

Inventive Principle:
Principle #15Dynamics

2Manufacturing precision

If a media player requests higher quality video at full-screen mode, then video quality is improved, but switching delay increases due to buffer playback requirements

Engineering Contradiction:
Improvevideo qualityVSAvoidswitching delay
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

Before switching to full-screen mode, the system pre-requests and buffers the higher quality video content in advance. This preliminary action ensures that when the user requests full-screen mode, the high-quality content is already available in the buffer, allowing immediate switching without the delay of playing out the entire low-quality buffer first.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system maintains continuous buffering of the higher quality stream even while playing the lower quality stream in windowed mode. This ensures that the useful action of preparing high-quality content continues uninterrupted, enabling seamless transition to full-screen mode when requested.

Inventive Principle:
Principle #20Continuity of useful action

3Speed

If a media player uses a short video buffer to enable fast switching, then switching speed is improved, but buffer under-runs occur causing viewing interruptions

Engineering Contradiction:
Improveswitching speedVSAvoidviewing smoothness
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The buffer system is segmented into multiple buffers (first buffer for current stream, second buffer for switching content). This segmentation allows the player to maintain short individual buffer durations for fast switching while having multiple buffers available to prevent under-runs, thereby maintaining both switching speed and viewing smoothness.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary buffering of alternative media streams in advance. By having pre-buffered content ready in a second buffer before a switch is needed, the player can quickly switch without risking buffer under-runs, thus maintaining both fast switching capability and viewing reliability.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8321905B1Fast switching of media streams
Publication Date: 2012.11.27 ADOBE INC
  • US8321905B1 patent drawing
  • US8321905B1 patent drawing
  • US8321905B1 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for fast switching of media streams, are described. The methods and systems described in this specification enable switching media streams as quickly as possible without playback interruption by not having to playback the content of the full buffer prior to the switch to the new stream. The fast switching disclosed in this specification is based on configuring a media player operated at a client computer to specify a switching time offset that corresponds to buffered content. In addition, the disclosed methods and systems enable a media streaming server computer, that is streaming a first media stream to the client computer, to select a key frame of a second media stream that is at or near a switching time offset specified by the client computer, and to immediately begin transmission of the second media stream.