Remote Screenshot Logic Using Virtual Screen Buffer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current screenshot methods in mobile terminals are inefficient, particularly when capturing real-time screens for applications like video transfer or remote debugging, as they fail to meet speed requirements due to the limitations of the screen cap instruction in the Android system.

Innovation Solution

A method and apparatus that allow a local terminal to receive a remote screenshot instruction, execute screenshot logic configured within the operating system, and send the screenshot to a remote terminal, optimizing processing speed and efficiency by utilizing different screenshot logics for various Android versions, including the use of virtual screens and screen shared memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the screen cap instruction in Android system is used to take screenshots, then the screenshot function can be implemented, but the screenshot speed is relatively low and cannot satisfy real-time requirements

Engineering Contradiction:
Improvescreenshot speedVSAvoidreal-time processing capability
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent introduces a virtual screen as an intermediary component that captures display content before it reaches the physical screen. This virtual screen buffer allows the system to quickly capture screenshots without going through the slower traditional screen cap instruction path, thereby improving screenshot speed while maintaining real-time processing capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If a unified screenshot method is used across different Android versions, then implementation is simple, but it cannot optimize for version-specific performance improvements

Engineering Contradiction:
Improvecompatibility across Android versionsVSAvoidscreenshot processing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent implements a dynamic screenshot method that automatically adapts to different Android versions. The system includes multiple screenshot implementation paths (first screenshot method for older versions, second screenshot method for newer versions) and dynamically selects the appropriate method based on the detected Android version, ensuring both broad compatibility and optimized performance for each version.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the operational parameters of the screenshot function based on Android version parameters. By detecting the Android version and adjusting which screenshot method is used, the system optimizes performance for each version while maintaining universal compatibility across the Android ecosystem.

Inventive Principle:
Principle #35Parameter changes

3Speed

If the virtual screen method is used, then screenshot speed is improved, but system memory usage increases

Engineering Contradiction:
Improvescreenshot capture speedVSAvoidmemory consumption
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent implements a partial virtual screen approach where only the necessary portion of the display is captured in the virtual screen buffer. Instead of maintaining a full-resolution virtual screen for all scenarios, the system captures only the required screen content, reducing memory consumption while maintaining the speed advantages of virtual screen capture.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10949158B2Screenshot method and apparatus
Publication Date: 2021.03.16 TENCENT TECHNOLOGY (SHENZHEN) CO LTD
  • US10949158B2 patent drawing
  • US10949158B2 patent drawing
  • US10949158B2 patent drawing

AI summary

A screenshot method includes receiving, by a local terminal, a remote screenshot instruction sent by a remote terminal, taking a screenshot by executing a screenshot logic corresponding to the remote screenshot instruction, and sending the screenshot to the remote terminal. The screenshot logic us configured in an operating system of the local terminal and corresponds to a version of the operating system.