Streaming Content Delivery via User-Agent Parsing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The diverse range of mobile devices, media players, and protocols complicates the delivery of streaming content, often resulting in undelivered content and a poor user experience due to the need for manual selection of appropriate media files and protocols.
Innovation Solution
A server determines the type of requesting device and selects the appropriate media file and protocol, providing a multi-bitrate playlist to ensure efficient streaming by parsing user-agent strings and offering a single URL for access to media content, thereby eliminating the need for users to manually select formats.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single media file format is provided for all devices, then the server complexity is reduced, but the compatibility with diverse mobile devices and protocols deteriorates
Solution Approach 1:
The server dynamically changes the media file parameters (format, protocol, bitrate) based on the client device characteristics detected through user-agent string parsing. This allows the same server to serve multiple device types by adapting the delivery parameters rather than maintaining separate servers for each device type.
Solution Approach 2:
The server performs preliminary device identification and format selection before delivering the media content. By parsing the user-agent string and determining the appropriate format in advance, the server prepares the correct media file ready for immediate delivery, eliminating the need for client-side format selection.
2Adaptability or versatility
If the server provides multiple media file formats, then the compatibility with diverse devices is improved, but the device complexity and user selection burden increases
Solution Approach 1:
The server autonomously performs the task of selecting the appropriate media format by parsing device information from the user-agent string. This self-service approach eliminates the need for users to manually select formats, as the system automatically matches the device capabilities with the appropriate media delivery format.
Solution Approach 2:
The user-agent string acts as an intermediary that carries device identification information from the client to the server. This intermediary enables the server to automatically determine device type and select the appropriate format without requiring direct user input or complex client-side decision logic.
3Ease of operation
If manual format selection is required, then the user has control over the media file, but the ease of operation and user experience deteriorates
Solution Approach 1:
The system provides self-service by automatically detecting device characteristics and selecting the appropriate media format without user intervention. This automation enhances ease of operation as users simply need to access the media content through a single URL without any format selection steps.
Solution Approach 2:
The server performs preliminary device identification and format selection before the user requests media content. By determining the appropriate format in advance based on user-agent parsing, the system prepares everything needed for seamless delivery, eliminating any manual selection steps from the user experience.
4Reliability
If device-specific media files are provided, then the reliability of content delivery is improved, but the loss of time for format determination increases
Solution Approach 1:
The server performs device identification and format determination as a preliminary step in the content delivery process, using the user-agent string already present in the initial request. This preliminary action ensures the correct format is selected before media delivery begins, maintaining reliability while minimizing additional time overhead.
Solution Approach 2:
The user-agent string serves as an intermediary that provides device information immediately available in the HTTP request headers. By extracting device type from this pre-existing intermediary data, the server avoids time-consuming device detection methods while ensuring accurate format selection for reliable delivery.
Data Source
AI summary
A method of providing media content from a server to a client device, by providing a URL which allows access to media content by client the device, receiving a request from the client device for the media content corresponding to the single URL; determining an operating system of the client device requesting the media content; selecting a delivery protocol to stream to the client device based on the determined operating system; and providing said client device a streaming media file based on the selected delivery protocol, wherein the determination of the operating system of the client device includes parsing a user-agent string of the client device making the request.


