Video Encoding Slice Segmentation for Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing video encoding and decoding schemes are not suitable for resizing video data for displays of different sizes and lack parallelization, leading to inefficient processing and susceptibility to errors in error-prone channels.

Innovation Solution

The proposed solution involves dividing video streams into slices, allowing for independent encoding and decoding of macroblocks, using a multi-block scan pattern to group similar coefficients, and incorporating a slice table for direct access, enabling efficient resizing and parallel processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If video data is encoded using conventional block transform schemes with sequential processing, then coding efficiency is maintained through standardized DCT coefficient encoding, but processing speed deteriorates and parallelization is prevented

Engineering Contradiction:
Improveprocessing speedVSAvoidencoding structure complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The video data is divided into multiple independent slices, where each slice contains a complete set of encoded macroblocks. This segmentation allows parallel processing of different slices while maintaining the standardized DCT encoding within each slice, thus improving processing speed without sacrificing coding efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimensional organization by arranging macroblocks in a two-dimensional grid within slices and using a multi-block scan pattern that traverses multiple blocks simultaneously. This dimensional reorganization enables parallel processing operations while maintaining compatibility with conventional DCT encoding standards

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Loss of time

If the decoder processes each block sequentially as received in the bitstream, then memory usage is minimized, but processing time increases and resizing operations become inefficient

Engineering Contradiction:
Improvedecoding timeVSAvoidmemory buffer requirements
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The encoder performs preliminary organization of macroblocks into slices with a specific multi-block scan pattern before encoding. This preliminary structuring allows the decoder to process multiple blocks in parallel by reading from different positions in the bitstream simultaneously, reducing decoding time while only requiring temporary buffering of coefficients for the current slice

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If the video stream is encoded without slice structure, then the encoding process is simpler, but the ability to resize video for different displays is lost and error propagation increases

Engineering Contradiction:
Improveresizing capabilityVSAvoidslice structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The video stream is segmented into independent slices, where each slice contains a complete set of macroblocks that can be independently decoded and resized. This segmentation enables flexible resizing for different display sizes by processing only the required slices or portions of slices, while the added slice structure complexity is offset by the gained adaptability

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different slices can be processed with different quality parameters or decoding options based on the specific requirements of different display regions or devices. This local quality approach allows optimized resizing and processing for each slice independently, enhancing overall system adaptability

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS8958481B2Method and system for video encoding and decoding
Publication Date: 2015.02.17 APPLE INC
  • US8958481B2 patent drawing
  • US8958481B2 patent drawing
  • US8958481B2 patent drawing

AI summary

Methods and systems are provided for encoding and decoding a video stream. Each picture in a video stream can be divided into slices, each of which contains a contiguous row of macroblocks. All the blocks corresponding to a single video component within each slice can then be used as the basis for encoding the picture. By decomposing each picture into slices, the video stream can be efficiently converted for displays of varying size and/or quality. The encoded bitstream can include a slice table to allow direct access to each slice without reading the entire bitstream. Each slice can also be processed independently, allowing for parallelized encoding and/or decoding.