wiki:ventana/vpu

Version 1 (modified by Tim Harvey, 2 months ago) (diff)

move from ventana/graphics

VPU - Video Processing Unit (Codec Support)

The Video Processing Unit in the IMX6 is a CODA960 licensed IP block provided by Chips&Media supporting the following codecs:

Encode:

  • H.264 BP/CBP
  • H.263 V2
  • MPEG-4 SP
  • MPEG-2
  • MJPEG Baseline

Decode:

  • MPEG-2 MP/HP
  • H.264 BP/MP/HP
  • H.264 MVC BP/MP/HP
  • VC1 SP/MP/AP
  • MPEG-4/Xvid SP/ASP
  • DivX v3/4/5/6
  • H.263 V2
  • MJPEG Baseline
  • VP6/VebM VP8

Performance:

  • IMX6SOLO/DUALLITE (IMX6SDL):
    • HD 1080p30Hz + D1 decode
    • HD 1080p30Hz or 2x 720p encode
  • IMX6DUAL/I.MX6QUAD (IMX6DQ) (2 IPU's):
    • HD 1080p60Hz + D1 or 2x 1080p30Hz Decode
    • HD 1080p30Hz or 2x 720p encode

Software support:

  • Yocto BSP packages:
    • firmware-imx-vpu-imx6q - contains firmware (/lib/firmware/vpu/vpu_fw_imx6q.bin) for IMX6DUAL/IMX6QUAD
    • firmware-imx-vpu-imx6d - contains firmware (/lib/firmware/vpu/vpu_fw_imx6d.bin) for IMX6DUALLITE/IMX6SOLO
    • libfslvpuwrap3 / libvpu4 - libraries
    • gst-fsl-plugin - gstreamer plugin support for IMX6 VPU
    • libfslcodec-* - various gstreamer libraries

Documentation:

  • Yocto BSP's - i.MX_6_VPU_Application_Programming_Interface_Linux_Reference_Manual.pdf (from the Freescale i.MX6 Yocto BSP releases which you must download from Freescale)

References:

  • Freescale IMX6VPUAPI documents the VPU API - This is from the LINUXDOCS_BUNDLE downloadable from Freescale's IMX6 site - check there for the most recent version