Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Zynq UltraScale+ MPSoC VCU TRD 2018.3 - HDMI Video Capture

...

1 Overview

The primary goal of this Design is to demonstrate the capabilities of VCU hard block present in Zynq UltraScale+ EV devices. The TRD will serve as a platform to tune the performance parameters of VCU and arrive at optimal configurations for encoder and decoder blocks. 

This design supports the following video interfaces:

Sources:

  • HDMI-Rx capture pipeline implemented in the PL.
  • File source (SD card, USB storage, SATA hard disk).
  • Stream-In from network or internet.

Sinks:

  • DP Tx display pipeline in the PS.

VCU Codec:

  • Video Encode/Decode capability using VCU hard block in PL 
    • AVC/HEVC encoding.
    • Encoder/decoder parameter configuration.

Streaming Interfaces:

  • 1G Ethernet PS GEM 


Supported Resolution:

The table below provides the supported resolution from GUI and command line app in this design.


Resolution
GUICommand Line
Single StreamSingle Stream
4kp60X
4kp30X
1080p60X


√ - Supported
NA – Not applicable
x – Not supported


The below table gives information about the features supported in this design. 


Pipeline

Input source

Output Type

Resolution

VCU codec

Single Stream: Record/Stream-Out pipeline

HDMI-Rx

File Sink/ Stream-Out

4K/1080p

HEVC/AVC


The below figure shows the HDMI Video Capture design hardware block diagram.

The below figure shows the HDMI Video Capture design software block diagram.


1.1 Board Setup

Refer below link for Board Setup

...

2.3 Optimum VCU Encoder parameters for use-cases:

Video streaming:

  • Video streaming use-case requires very stable bitrate graph for all pictures.
  • It is good to avoid periodic large Intra pictures during the encoding session
  • Low-latency rate control (hardware RC) is the preferred control-rate for video streaming, it tries to maintain equal amount frame sizes for all pictures.
  • Good to avoid periodic Intra frames instead use low-delay-p (IPPPPP…)
  • VBR is not a preferred mode of streaming.

Performance: AVC Encoder settings:

  • It is preferred to use 8 or higher slices for better AVC encoder performance.
  • AVC standard does not support Tile mode processing which results in processing of MB rows sequentially for entropy coding.

Quality: Low bitrate AVC encoding:

  • Enable profile=high and use qp-mode=auto for low-bitrate encoding use-cases.
  • The high profile enables 8x8 transform which results in better video quality at low bitrates.

...

3 Appendix A - Input Configuration File (input.cfg)

...