Server-Based Video Stitching via Dynamic Segment Switching
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current server-side video stitching methods are inefficient as they require processing and storing multiple versions of video sequences with different advertisements, limiting the variety of advertisements that can be delivered, due to the need to reprocess and store each version separately.
Innovation Solution
Implementing a server-based video stitching technique where the server dynamically switches between streaming different video segments from a single address, generating a combined header file for the sequence, which is smaller and faster to create than a single video file, allowing seamless seeking within the sequence without storing the entire stitched video.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If server-side stitching processes each segment and concatenates them into a single video file, then the video sequence can be delivered as a complete file, but processing and storage costs increase greatly
Solution Approach 1:
The patent divides the video content into separate segment files (main content segments and advertisement segments) that are stored independently. Instead of concatenating them into a single file, the system maintains them as discrete units that can be dynamically assembled through URL manipulation, eliminating the need to reprocess entire videos when creating different versions.
Solution Approach 2:
The patent shifts from a temporal dimension approach (concatenating video data sequentially into one file) to a dimensional approach using URL parameters. By embedding segment identifiers and ordering information in the URL structure, the system achieves video stitching functionality without actual file concatenation, reducing processing overhead.
2Adaptability or versatility
If multiple versions of video sequences with different advertisements are created, then ad variety increases, but reprocessing and storage overhead increases
Solution Approach 1:
The patent creates a universal template structure where video segments are defined once with metadata indicating their type (main content or advertisement) and ordering position. This single template can generate multiple video versions by substituting different advertisement segments, eliminating the need to create and store separate complete video files for each advertisement variation.
Solution Approach 2:
The system uses lightweight URL templates that reference segment identifiers rather than duplicating actual video data. Multiple advertisement versions are achieved by copying and modifying only the URL parameter strings, not the video content itself, dramatically reducing storage requirements while maintaining full video functionality.
3Productivity
If client-side stitching is used, then processing overhead is reduced, but trick-play operations cannot be performed through the entire sequence
Solution Approach 1:
The patent introduces a server-side URL generation component that acts as an intermediary between the video segments and the client player. This intermediary pre-processes the segment information into a structured URL format that the client player can interpret, enabling the client to perform trick-play operations on the entire sequence without requiring complex client-side stitching logic.
Data Source
AI summary
Approaches, techniques, and mechanisms are disclosed for the server-based stitching of a sequence of video segments. According to one embodiment, rather than combining the segments together into a single video file, a server (e.g. a segment-based HTTP server) is configured to dynamically switch between streaming the different segments in the sequence. That is, for instance, as the server reaches the end of one segment, instead of terminating the streaming, the server retrieves the video data for the next segment and continues streaming content from the next segment. Thus, the server streams a sequence of multiple and distinct video segments from a single addressable location (e.g. a URL), rather than streaming the distinct video segments from separate addressable locations. To a client, the stream appears to be a single video stream, even though composed of audio/video data from separate and distinct files or sources.


