Server-Side Video Player Selection for Web Playback

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current web technologies face challenges in ensuring video playback across different web browsers due to the lack of a ubiquitous video player, leading to unsatisfactory user experiences and increased data communication burdens from client-side scripting for video player selection.

Innovation Solution

A server-side solution that selects a compatible video player based on the client application's supported players, sending HTML or XHTML text that references video content specifically to the selected player, ensuring video playback compatibility and reducing data transmission by eliminating unnecessary client-side scripting.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If client-side scripting is used to select a video player, then video playback compatibility across different browsers is improved, but data communication overhead increases and web browser performance deteriorates

Engineering Contradiction:
Improvevideo playback compatibilityVSAvoiddata communication overhead
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent inverts the traditional client-side selection approach by implementing server-side detection and selection of video players. The web server detects the client application's identity and capabilities, then selects the appropriate video player and generates corresponding HTML code. This inversion transfers the selection logic from client to server, reducing client-side data processing while maintaining compatibility.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The web server performs self-service by automatically detecting client application characteristics and autonomously selecting the most compatible video player without requiring client-side scripting execution. The server uses its own detection capabilities and pre-configured video player compatibility information to make the selection, eliminating the need for complex client-side decision-making logic.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If client-side scripting is used to select a video player, then video playback compatibility across different browsers is improved, but web browser performance deteriorates

Engineering Contradiction:
Improvevideo playback compatibilityVSAvoidweb browser performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent inverts the traditional client-side selection approach by implementing server-side detection and selection of video players. The web server detects the client application's identity and capabilities, then selects the appropriate video player and generates corresponding HTML code. This inversion transfers the selection logic from client to server, reducing client-side data processing while maintaining compatibility.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The patent extracts the video player selection logic from the client application and relocates it to the web server. By removing the complex if-else decision-making script from the client side and implementing it on the server side, the patent reduces the computational burden on the web browser while maintaining video playback compatibility across different clients.

Inventive Principle:
Principle #2Taking out (Extraction)

3Device complexity

If a single video player is specified in the webpage, then the webpage structure is simplified, but video playback compatibility across different browsers deteriorates

Engineering Contradiction:
Improvewebpage structureVSAvoidvideo playback compatibility
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements preliminary action by having the web server pre-detect client application characteristics and pre-select the most compatible video player before generating the webpage. This advance detection and selection eliminates the need for complex client-side if-else logic while ensuring compatibility, as the appropriate video player is chosen in advance based on server-side detection of client capabilities.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent uses feedback from the client application's User-Agent string or other identification information to dynamically select the appropriate video player. The web server receives feedback about the client's identity and capabilities, then uses this information to select the most compatible video player and generate corresponding HTML code, ensuring both simplicity and compatibility.

Inventive Principle:
Principle #23Feedback

4Object-affected harmful factors

If execution of client-side scripting is disabled or denied, then user security is improved, but video playback compatibility deteriorates

Engineering Contradiction:
Improveuser securityVSAvoidvideo playback compatibility
Core Design Contradiction:
Object-affected harmful factorsVSAdaptability or versatility

Solution Approach 1:

The patent inverts the traditional client-side selection approach by implementing server-side detection and selection of video players. The web server detects the client application's identity and capabilities, then selects the appropriate video player and generates corresponding HTML code. This inversion transfers the selection logic from client to server, reducing client-side data processing while maintaining compatibility.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS8892634B2Extensible video player selection via server-side detection of client application
Publication Date: 2014.11.18 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8892634B2 patent drawing
  • US8892634B2 patent drawing
  • US8892634B2 patent drawing

AI summary

A web server receives from different client applications HTTP requests for the same webpage in which video content is to be embedded. The web server provides to each of the client applications an HTTP response to the HTTP request. The HTML or XHTML text included in the response references the video content solely in a manner that is specific to a single video player. The HTML or XHTML text returned in a response to a request may be different for different client applications, even though the different client applications all requested the same webpage or portion of webpage. The video file referenced by the HTML or XHTML text returned in a response may be different for different client applications, even though the video files encode the same video content.