Encoder Decoder Selection for Video Sessions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Video conferencing systems face challenges in adapting to differences in device capabilities and network conditions, leading to difficulties in encoding and decoding video streams effectively.

Innovation Solution

A method where devices exchange feature sets for encoders and decoders, allowing the sending device to select an appropriate encoder and features based on the receiving device's capabilities and network conditions, and dynamically adjust these settings as conditions change.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If devices use fixed encoding and decoding formats, then compatibility is maintained, but adaptability to different device capabilities deteriorates

Engineering Contradiction:
Improveadaptability to device capabilitiesVSAvoidencoding complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic encoder and decoder selection where devices can switch between different encoding formats and features based on real-time assessment of peer device capabilities. The system dynamically adjusts the complexity of encoding by selecting from multiple available encoders with varying feature sets, allowing adaptation to different device types while maintaining manageable complexity through automated selection algorithms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes encoding parameters by selecting different encoders and feature sets based on device capability parameters. Devices exchange capability information and use this to determine appropriate encoding parameters, such as choosing between hardware and software encoders, selecting different resolution levels, and adjusting other encoding features to match the receiving device's capabilities.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If devices exchange detailed capability information, then encoding compatibility improves, but communication overhead increases

Engineering Contradiction:
Improveencoding compatibilityVSAvoiddata exchange volume
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential capability information needed for encoder/decoder selection from full device capability sets. Instead of exchanging complete capability profiles, devices exchange specific parameters relevant to video encoding compatibility, such as supported formats, hardware decoder availability, and key feature support, reducing data exchange volume while maintaining encoding compatibility.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If real-time adaptation to network conditions is implemented, then video quality improves, but processing requirements increase

Engineering Contradiction:
Improvevideo qualityVSAvoidprocessing power
Core Design Contradiction:
ProductivityVSPower

Solution Approach 1:

The system performs preliminary assessment of peer device capabilities and network conditions during connection establishment, pre-selecting appropriate encoders and encoding parameters before actual video transmission begins. This preliminary action reduces the need for continuous real-time adjustments, lowering ongoing processing requirements while maintaining optimal video quality adapted to the established connection characteristics.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10045089B2Selection of encoder and decoder for a video communications session
Publication Date: 2018.08.07 APPLE INC
  • US10045089B2 patent drawing
  • US10045089B2 patent drawing
  • US10045089B2 patent drawing

AI summary

For a first device participating in a video communications session with a second device, some embodiments provide a method that receives sets of encoding features supported by each of one or more decoders of the second device. The method selects an encoder for the video communication session from several encoders available to the first device. The method selects a set of encoding features of the selected encoder based on the sets of encoding features received from the second device. The method transmits an encoded video bitstream to the second device along with information identifying the selected features in order for the second device to select a decoder to decode the bitstream.