Cross-Process VOIP Media Handling via Segmented Processes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Developing VOIP applications for mobile phones with limited resources poses challenges in maintaining high quality user experience across both low-end and high-end devices, particularly due to resource sharing and switching between different types of calls, which is not an issue on personal computers or tablets.

Innovation Solution

A VOIP platform is developed that partitions processes to conserve resources, using a UI host process for foreground operations and an agent host process for background tasks, leveraging existing push client services and keep-alive agents to manage battery life and resource allocation, enabling cross-process media handling to reduce latency and enhance the user experience.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If hardware resources are allocated to another application while on a VOIP call, then the other application can operate, but the VOIP call user experience is negatively impacted

Engineering Contradiction:
Improveapplication switching capabilityVSAvoidVOIP call quality
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The system segments the VOIP application into two separate processes: a UI host process that handles user interface operations and a call agent process that handles voice communication. This segmentation allows the call agent process to maintain dedicated resource allocation for VOIP calls while the UI process can switch between applications without interfering with call quality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a media engine as an intermediary component that mediates between the UI host process and the call agent process. The media engine handles media stream routing and coordination, ensuring that media resources are properly allocated and that switching between applications does not disrupt the VOIP call.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If a single process is used for VOIP application, then code simplicity is maintained, but resource consumption increases and battery life is reduced

Engineering Contradiction:
Improveprocess structure simplicityVSAvoidbattery life
Core Design Contradiction:
Device complexityVSUse of energy by moving object

Solution Approach 1:

The VOIP application is divided into multiple processes with distinct responsibilities: the UI host process runs only when needed for user interaction, while the call agent process runs continuously to maintain call capability. This segmentation reduces overall energy consumption by keeping the heavier UI process dormant when not needed, while maintaining lightweight background presence for call functionality.

Inventive Principle:
Principle #1Segmentation

3Productivity

If cross-process media handling is implemented, then media latency increases, but resource efficiency and battery life improve

Engineering Contradiction:
Improveresource efficiencyVSAvoidmedia latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The media engine serves as an intermediary that optimizes cross-process media communication. It implements efficient inter-process communication mechanisms and media stream management that minimize latency while maintaining the resource efficiency benefits of cross-process architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system dynamically adjusts media handling strategies based on operational context. When the UI process is active, it can utilize faster in-process media paths; when the UI process is dormant, it switches to cross-process media handling through the media engine. This dynamic adaptation optimizes the balance between latency and resource efficiency.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9191417B2Cross-process media handling in a voice-over-internet protocol (VOIP) application platform
Publication Date: 2015.11.17 MICROSOFT TECHNOLOGY LICENSING LLC
  • US9191417B2 patent drawing
  • US9191417B2 patent drawing
  • US9191417B2 patent drawing

AI summary

A computer-implemented system is provided that facilitates implementation of a voice-over-IP (VOIP) application. The system includes a host system and a user interface (UI) host process residing on the host system. The system also includes an agent host process residing on the host system which is being configured to process a VOIP call received by one or more VOIP applications executable on the host system. A moniker protocol is utilized for redirection of input and output between a media element which is utilized to render media on a display on the system. The redirection enables media processing to be allocated between the UI host process in the foreground and the agent host process in the background to thereby reduce latency perceived by a user during a VOIP experience.