Patent 10469554B2

Derivative works

Defensive disclosure: derivative variations of each claim designed to render future incremental improvements obvious or non-novel.

Active provider: Google · gemini-2.5-flash

Derivative works

Defensive disclosure: derivative variations of each claim designed to render future incremental improvements obvious or non-novel.

✓ Generated

Defensive Disclosure for US Patent 10469554B2

This Defensive Disclosure document aims to broaden the public domain of knowledge surrounding multi-bitrate content streaming using segmented media objects (streamlets) and distributed encoding systems, building upon the foundational concepts described in US Patent 10469554B2. The objective is to proactively disclose variations and extensions to these concepts, thereby rendering future incremental advancements by competitors obvious or non-novel under 35 U.S.C. §§ 102 and 103, particularly regarding the patent's expired status as of 2025-04-28 [cite: US10469554B2]. This disclosure focuses on deriving new technical insights and alternative implementations rather than re-summarizing the original patent.

Combination Prior Art Scenarios

The core inventive concepts of US Patent 10469554B2—segmentation into streamlets, multi-bitrate encoding, distributed job assignment, and adaptive client-side requesting—can be combined with existing open-source standards to create novel systems that would be obvious to a person having ordinary skill in the art.

  1. Integration with MPEG-DASH Standard: The streamlet segmentation and multi-bitrate set generation described in US10469554B2 can be combined directly with the ISO/IEC 23009-1 MPEG-DASH standard. Specifically, the "sets of streamlets" (e.g., varying bitrates for the same time index) can be represented as different "Representations" within an MPEG-DASH "Adaptation Set," and individual streamlets as "Segments" within a Media Presentation Description (MPD). The distributed encoding system of US10469554B2 would generate these DASH-compliant segments and update the MPD, while the client-side adaptive requesting logic would leverage DASH's HTTP-based range requests and manifest parsing to switch between Representations. This combination renders the adaptive delivery mechanism through standard HTTP protocols (as enabled by DASH) an obvious extension of the streamlet concept.
  2. Utilizing FFmpeg for Encoding Workflows: The distributed encoding module (comprising a master module and host computing modules) detailed in US10469554B2 can be implemented using FFmpeg as the primary transcoding engine. Each host computing module would receive a raw streamlet and execute FFmpeg commands with predefined profiles (e.g., H.264/AAC at 100kbps, 200kbps, 600kbps) to generate the multi-bitrate streamlets. FFmpeg's extensive codec support, filtering capabilities, and command-line interface make it an obvious choice for flexible and robust streamlet generation in such a distributed system. The master module's bidding algorithm would assign jobs to hosts, which in turn use FFmpeg to process the streamlets according to the desired output bitrate and format.
  3. Adaptive Streamlet Delivery via HLS Protocol: The system for generating sequential, multi-bitrate streamlets in US10469554B2 can be adapted to be fully compliant with Apple's HTTP Live Streaming (HLS) protocol. Each "set of streamlets" at a given time index would correspond to an entry in an HLS master playlist, linking to different media playlists, each containing references to individual transport stream (.ts) or fragmented MP4 (.fmp4) streamlets at specific bitrates. The encoding module would output HLS-compliant media segments and update the .m3u8 playlist files. The client module's adaptive bitrate logic would then parse these HLS playlists to request appropriate streamlets based on network conditions, leveraging HLS's robust error handling and segment sequencing.

Derivative Disclosures

The following derivatives explore alternative implementations, operational parameters, cross-domain applications, integrations with emerging technologies, and failure modes of the multi-bitrate streamlet streaming invention.

1. Material & Component Substitution

Derivative 1.1: FPGA-Accelerated Streamlet Encoding Hosts

Enabling Description:
Instead of general-purpose CPUs or GPUs, the host computing modules (504) within the encoding module (406) are implemented using Field-Programmable Gate Arrays (FPGAs) configured with custom hardware accelerators for video encoding. Each FPGA host is loaded with a bitstream implementing multiple parallel H.264/HEVC encoding pipelines. The master module (502) assigns raw streamlets to these FPGA hosts, which perform ultra-low-latency, multi-bitrate encoding by dedicated hardware logic gates rather than software execution on a CPU. This substitution leverages the inherent parallelism and energy efficiency of FPGAs for real-time live content processing, offering predictable encoding times independent of software scheduling overheads. The "bid" from an FPGA host (504) would be based on its available hardware pipelines and current queue depth, directly reflecting its instantaneous encoding capacity rather than general CPU metrics.

graph TD
    A[Streamlet Module 404] --> B{Master Module 502};
    B -- Assigns Raw Streamlet --> C[FPGA Host 504 (Encoder)];
    C -- Encodes Streamlet --> D[FPGA Hardware Accelerators (H.264/HEVC)];
    D -- Outputs Multi-Bitrate Streamlets --> E[Streamlet Database 408];
    C -- Bid to Master --> B;

Derivative 1.2: Quantum-Dot Photonic Network Interconnects for Distributed Encoding

Enabling Description:
The data communications network connecting the master module (502) and host computing modules (504) within the encoding cluster (406) is replaced with a high-bandwidth, low-latency quantum-dot photonic network. Instead of electrical signals over copper or standard optical fiber, data (raw streamlets, bids, encoded streamlets) is transmitted as modulated light pulses carried by quantum dots embedded in a specialized waveguide. This photonic interconnect operates at terabit-per-second speeds with minimal signal degradation and latency, significantly reducing the bottleneck for distributing raw streamlets and collecting encoded sets. This ensures that network-related computing variables in the bid (e.g., data transfer rates) are virtually constant and near-instantaneous, allowing the bidding algorithm to focus purely on computational capacity.

graph TD
    A[Streamlet Module 404] --> M(Master Module 502);
    M -- Raw Streamlet --> QNI(Quantum-Dot Photonic Network Interconnect);
    QNI -- Bid --> M;
    QNI -- Encoded Streamlets --> D[Streamlet Database 408];
    subgraph Host Computing Modules
        H1(Host 504.1) --> QNI;
        H2(Host 504.2) --> QNI;
        Hn(Host 504.N) --> QNI;
    end
    QNI --- H1;
    QNI --- H2;
    QNI --- Hn;

2. Operational Parameter Expansion

Derivative 2.1: Micro-Streamlets for Sub-Second Adaptive Switching

Enabling Description:
The predetermined length of streamlets, specified as between about 0.1 and 5 seconds in US10469554B2, is expanded to the extreme lower end, enabling "micro-streamlets" with durations in the range of 10 to 100 milliseconds. This requires the streamlet module (404) to perform high-frequency segmentation, generating hundreds of streamlets per second. The encoding module (406) must then encode these micro-streamlets and their multi-bitrate sets with extremely low latency, potentially using dedicated hardware accelerators or highly optimized GPU pipelines. The client module (114) would continuously monitor network conditions at a sub-second granularity, switching between quality levels with minimal delay, providing almost instantaneous adaptive rate adjustment to network fluctuations. This pushes the adaptive streaming to a much finer temporal resolution.

sequenceDiagram
    participant S as Streamlet Module (High Freq)
    participant E as Encoding Module (Low Latency)
    participant C as Client Module (Sub-Sec Adaptive)
    S->>E: Raw Micro-Streamlet (10-100ms)
    E->>E: Encode Multi-Bitrate Set
    E->>C: Deliver Micro-Streamlet Set
    C->>C: Monitor Network & Buffer (every ~50ms)
    alt Network Degrades
        C->>C: Trigger Downshift
        C->>E: Request Lower Bitrate Micro-Streamlet
    else Network Improves
        C->>C: Trigger Upshift
        C->>E: Request Higher Bitrate Micro-Streamlet
    end

Derivative 2.2: Extreme-Scale Distributed Encoding for Exascale Content Archiving

Enabling Description:
The system (100) is scaled to process and archive exabytes of media content, where the content files (200) can represent petabyte-scale datasets (e.g., scientific simulations, ultra-high-resolution astronomical data). The "streamlets" (303) are defined not by time duration but by logical data blocks or chunks, potentially ranging from gigabytes to terabytes, representing segments of these massive datasets. The encoding module (406) comprises thousands of geographically dispersed host computing modules (504), forming an exascale distributed computing grid. The master module (502) employs advanced bidding algorithms that consider not only local computing variables but also network topology, data gravity, and energy costs to assign encoding jobs (e.g., different compression ratios, error correction levels for long-term archival) for these massive streamlets. The encoded streamlets (304) are stored in a hyperscale, globally distributed object storage system (408).

graph TD
    P[Publisher (Exabyte Content)] --> R[Capture Module 402];
    R --> S[Streamlet Module 404 (Gigabyte/Terabyte Chunks)];
    S --> M(Master Module 502);
    M -- Job Assignment (Data Gravity Aware) --> DG[Distributed Computing Grid (Thousands of Hosts 504)];
    DG -- Encodes Multi-Version Chunks --> HSS[Hyperscale Storage System 408 (Geo-Distributed)];
    M -- Bids (Network Topology, Energy Cost) --> DG;
    C[Client Module 114 (Scientific Visualization)] -- Requests Chunks --> HSS;

3. Cross-Domain Application

Derivative 3.1: Adaptive Multi-Modality Medical Imaging Streaming

Enabling Description:
The streamlet approach is applied to real-time streaming of multi-modality medical imaging data (e.g., MRI, CT, Ultrasound, PET scans) to remote diagnostic workstations. A "media content file" (200) would be a live or archived medical scan. The streamlet module (404) segments the raw imaging data into 3D volumetric "streamlets" (303), each representing a specific anatomical slice or volume segment. The encoding module (406) generates "sets of streamlets" (306) where each streamlet in a set has a unique compression level, resolution, or diagnostic feature emphasis (ee.g., one streamlet for high-fidelity anatomical detail, another for tumor detection with false-color overlay). The master module (502) assigns encoding to hosts (504) based on their ability to perform specialized image processing tasks. The client module (114) at the diagnostic workstation adaptively requests streamlets based on available network bandwidth and the clinician's real-time diagnostic focus, ensuring critical information is prioritized and streamed with appropriate quality.

graph TD
    MIG[Medical Imaging Generator (MRI, CT)] --> CM[Capture Module 402];
    CM --> SM[Streamlet Module 404 (Volumetric Slices)];
    SM --> EM[Encoding Module 406];
    EM -- Encodes Multi-Quality/Feature Streamlets --> DB[Streamlet Database 408];
    DS[Diagnostic Workstation (Client 114)] -- Adaptive Request (Focus-Driven) --> DB;
    EM -- Distributed Encoding (Bids) --> HC[Host Computing Modules (Specialized Image Processors)];

Derivative 3.2: Real-time Multi-Fidelity Simulation Data Streaming for Autonomous Vehicles

Enabling Description:
The system is adapted for streaming real-time simulation data to autonomous vehicle (AV) control systems, particularly for scenarios involving remote operation or high-fidelity sensor data processing in cloud environments. The "media content" (200) represents a continuous stream of sensor data (Lidar point clouds, camera feeds, radar returns) and environmental model data from a simulation. The streamlet module (404) segments this data into temporal "streamlets" (303). The encoding module (406) generates "sets of streamlets" (306) where each streamlet corresponds to different fidelity levels (e.g., raw Lidar points, downsampled Lidar, semantic segmentation masks), different sensor data types, or different prediction horizons. The master module (502) assigns encoding tasks based on host capabilities for specific sensor data processing or predictive analytics. The AV's client module (114) adaptively requests streamlets, prioritizing low-latency, mission-critical data (e.g., immediate obstacle detection) over high-fidelity background mapping data, adjusting quality based on real-time vehicle state, network latency, and perceived risk.

stateDiagram
    state "Autonomous Vehicle Simulation" as AVS
    state "Streamlet Generation" as SG
    state "Multi-Fidelity Encoding" as MFE
    state "Data Distribution" as DD
    state "AV Client Adaptation" as AVCA

    AVS --> SG: Raw Sensor/Env Data
    SG --> MFE: Segmented Streamlets
    MFE --> DD: Multi-Fidelity Streamlet Sets
    DD --> AVCA: Deliver Streamlets
    AVCA --> DD: Adaptive Request (Based on Risk, Latency)

    MFE --> MFE: Distributed Encoding (Bid-based)
    AVCA --> MFE: Feedback (Quality Needs)

    note on AVCA
        Prioritizes:
        - Low-latency obstacle detection
        - High-fidelity critical path mapping
        - Low-fidelity background data
    end

Derivative 3.3: Dynamic Multi-Resolution Satellite Imagery Streaming for Disaster Response

Enabling Description:
The system is utilized for streaming dynamic, multi-resolution satellite imagery and derived geospatial intelligence to first responders during disaster relief operations. The "media content" (200) is a live feed from an Earth observation satellite or drone fleet over a disaster zone. The streamlet module (404) segments the geographical area into grid-based "streamlets" (303), each representing a specific tile of the map. The encoding module (406) creates "sets of streamlets" (306) where each streamlet in a set corresponds to a different resolution (e.g., 30cm, 1m, 10m per pixel), different spectral bands (e.g., visible, infrared), or different analytical overlays (e.g., flood extent, damaged infrastructure heatmaps). The master module (502) distributes encoding to hosts (504) capable of rapid geospatial processing. First responder client modules (114) (e.g., on ruggedized tablets) adaptively request streamlets based on their current location, mission priority, and available satellite/cellular bandwidth, ensuring that high-detail imagery is available for their immediate area of operation while maintaining situational awareness with lower resolution surrounding areas.

graph TD
    EOS[Earth Observation Satellite/Drone] --> CM[Capture Module 402];
    CM --> SM[Streamlet Module 404 (Geospatial Tiles)];
    SM --> EM[Encoding Module 406];
    EM -- Encodes Multi-Resolution/Band/Overlay Streamlets --> DB[Streamlet Database 408 (Geo-Spatial Index)];
    FRC[First Responder Client 114] -- Adaptive Request (Location/Mission/Bandwidth) --> DB;
    EM -- Distributed Encoding (Bids for Geospatial Processors) --> HC[Host Computing Modules (Geo-Processors)];

4. Integration with Emerging Tech

Derivative 4.1: AI-Driven Predictive Adaptive Bitrate Optimization

Enabling Description:
The client module (114) incorporates an AI-driven predictive model (e.g., a Recurrent Neural Network or Transformer) that continuously analyzes historical network performance, current congestion patterns, available streamlet buffer levels, and anticipated future bandwidth variations (e.g., based on time of day, location, cellular tower load). This AI module dynamically adjusts the performance factor calculations (η_current, η_up, η_down) and the pre-requesting strategy (702). Instead of purely reactive bitrate shifting, the AI model predicts optimal streamlet bitrates, pre-fetches decisions, and even requests redundant streamlets at predicted future optimal bitrates or from multiple web servers (116) or proxy caches (118) to minimize buffering and maximize perceived quality. The encoding master (502) could also use AI to predict demand for certain bitrate streamlets, prioritizing encoding jobs for popular content or predicted high-demand quality levels.

sequenceDiagram
    participant C as Client Module 114
    participant AI as AI Predictive Module
    participant N as Network Controller Module 706
    participant W as Web Server 116
    C->>AI: Send Real-time Network Metrics, Buffer State
    AI->>AI: Analyze & Predict Optimal Bitrate/Prefetch
    AI->>C: Recommend Streamlet Request Strategy (Bitrate, Quantity)
    C->>N: Request Streamlets (AI Optimized)
    N->>W: Fetch Streamlets
    W->>N: Deliver Streamlets
    N->>C: Pass to Staging/Viewer
    loop Continuous Adaptation
        C->>AI: Update Metrics
        AI->>AI: Re-evaluate & Re-predict
    end

Derivative 4.2: IoT Sensor-Augmented Content Module with Edge Encoding

Enabling Description:
The content module (112) integrates with a network of IoT sensors (e.g., environmental sensors, audience engagement sensors, camera analytics) deployed at the content capture location (e.g., a live event venue). The data from these IoT sensors is fed into the streamlet module (404) and encoding module (406). The encoding module, particularly the master module (502), uses this real-time IoT data to dynamically adjust encoding parameters. For example, if audience engagement sensors indicate high interest in a specific segment, the encoding module might prioritize higher bitrate streamlets for that segment. Furthermore, a portion of the encoding hosts (504) are deployed as edge computing devices (e.g., on-site servers, specialized hardware at the venue) to perform initial raw streamlet encoding closest to the source, reducing backhaul bandwidth requirements and latency for the first pass encoding process.

graph TD
    ES[Event Source (Camera, Mic)] --> CM[Capture Module 402];
    IOT[IoT Sensors (Audience, Environment)] --> CM;
    CM --> SM[Streamlet Module 404];
    SM -- Raw Streamlets --> EEC[Edge Encoding Cluster (Host 504.1-N)];
    EEC -- Encodes Primary Bitrates --> SD[Streamlet Database 408];
    EEC -- High-Bitrate/Archive --> CEC[Central Encoding Cluster (Host 504.X-Y)];
    CEC --> SD;
    SM -- Encoding Control (IoT-driven) --> M(Master Module 502);
    M --> EEC;
    M --> CEC;

Derivative 4.3: Blockchain-Verified Content Provenance and Rights Management for Streamlets

Enabling Description:
Each streamlet (304) and its corresponding set (306) are immutably linked to metadata (414) stored and verified on a distributed ledger (blockchain). When a streamlet is generated by the encoding module (406), its hash, time index, bitrate, and a cryptographic signature from the encoding host (504) are recorded as a transaction on a blockchain. This provides verifiable proof of content provenance, ensuring the integrity and authenticity of each streamlet from capture to delivery. The metadata module (412) interacts with the blockchain to retrieve and update content rights, licensing information, and publisher-defined usage policies for each streamlet. The client module (114) can query the blockchain to verify the legitimacy of requested streamlets and ensure compliance with digital rights management (DRM) policies before playback, enhancing trust and security in content distribution.

sequenceDiagram
    participant S as Streamlet Module 404
    participant E as Encoding Module 406
    participant B as Blockchain Ledger
    participant M as Metadata Module 412
    participant C as Client Module 114

    S->>E: Raw Streamlet
    E->>E: Encode Multi-Bitrate Set
    E->>B: Record Streamlet Hash, Metadata, Signature (Transaction)
    E->>M: Store Streamlet Info + Blockchain TxID
    M->>B: Update Content Rights/Policies
    C->>M: Request Streamlet & Metadata
    M->>C: Deliver Streamlet & TxID
    C->>B: Verify Streamlet Integrity & Rights via TxID
    alt Verification Success
        C->>C: Play Streamlet
    else Verification Failure
        C->>C: Deny Playback, Alert User
    end

5. The "Inverse" or Failure Mode

Derivative 5.1: Low-Power/Limited-Functionality Encoding for Emergency Broadcast

Enabling Description:
The encoding module (406) includes an "emergency mode" or "low-power mode" where the master module (502) automatically reduces the number of generated bitrate streams (e.g., only generating a single, lowest-quality stream), simplifies encoding algorithms (e.g., single-pass encoding instead of multi-pass), and reduces the number of active host computing modules (504). This mode is triggered during power outages, network blackouts, or critical resource scarcity. The goal is to ensure minimal content streaming (e.g., text-based emergency alerts, very low-resolution video) can persist using residual computing power and bandwidth. The client module (114) would prioritize receiving these low-power streamlets, even at the cost of quality, to maintain critical information dissemination. The streamlet duration might also increase in this mode (e.g., from 2 seconds to 10-15 seconds) to reduce encoding overhead.

stateDiagram
    state "Normal Operation" as Normal
    state "Emergency Mode (Low Power)" as Emergency
    state "Encoding Module 406" as EM
    state "Client Module 114" as CM

    [*] --> Normal
    Normal --> Emergency: Trigger (Power/Network Failure)
    Emergency --> Normal: Restore (Power/Network Restore)

    state Normal {
        EM --> EM: Multi-Bitrate Encoding
        CM --> EM: Adaptive Request
    }

    state Emergency {
        EM --> EM: Single Low-Bitrate Encoding
        EM --> EM: Reduced Host Activity
        CM --> EM: Prioritize Low-Bitrate Request
        note on EM
            Encoding simplified (e.g., single-pass)
            Fewer active hosts
            Longer streamlet durations
        end
    }

Derivative 5.2: Safe Failure Mode for Live Event Streamlet Redundancy

Enabling Description:
For critical live events, the encoding module (406) operates in a "safe failure mode" characterized by proactive streamlet redundancy. For each source streamlet (303), the master module (502) assigns encoding jobs to at least two independent host computing modules (504) for each required bitrate. These redundant hosts (504) generate identical multi-bitrate sets (306) in parallel. Upon completion, both sets are stored in geographically separated streamlet databases (408a, 408b). If one host fails during encoding, the other host's output is immediately available. If one streamlet database or web server (116) becomes unreachable, the client module (114) automatically switches to requesting streamlets from the alternative, redundant source. The bidding algorithm (502) for job assignment would prioritize hosts in different failure domains (ee.g., different racks, power grids, or data centers) to maximize resilience against single points of failure.

graph TD
    SM[Streamlet Module 404] --> M(Master Module 502);
    M -- Assign Redundant Job --> H1[Host 504.1 (Primary)];
    M -- Assign Redundant Job --> H2[Host 504.2 (Redundant)];
    H1 -- Encoded Streamlet Set --> D1[Streamlet Database 408a (Primary)];
    H2 -- Encoded Streamlet Set --> D2[Streamlet Database 408b (Redundant)];
    C[Client Module 114] -- Request Streamlet --> W1[Web Server 116a (Primary)];
    C -- Fallback Request --> W2[Web Server 116b (Redundant)];
    W1 -- Fetches from --> D1;
    W2 -- Fetches from --> D2;
    D1 -- Sync/Replication --> D2;

Generated 5/27/2026, 6:04:52 PM