Versions Compared

Key

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

Introduction

This document is about the VC8000 video codec used with V4L2 on the C3V platform.

...

This feature needs to make some changes to GStreamer and FFmpeg source code to adapt to the v4l2 codec interface and we will provide the patches for the changes. And the kernel also needs to do some config to support the VC8000 video codec V4L2 driver.

Get the patches

...

Here we assume that you have already configured GStreamer and FFMPEG in the buildroot and have built it successfully.

GStreamer

Apply the gst1-plugins-good-1.20.1.diffto <buildroot>/output/build/gst1-plugins-good-1.20.1/by the command:

Code Block
patch -p1 < gst1-plugins-good-1.20.1.diff

...

Code Block
languagebash
make gst1-plugins-good-rebuild

The modified library is libgstvideo4linux2.so.

FFmpeg

Apply the ffmpeg-4.4.2.diff to <buildroot>/output/build/ffmpeg-4.4.2/ by command:

Code Block
languagebash
patch -p1 < ffmpeg-4.4.2.diff

...

Code Block
languagebash
make ffmpeg-rebuild

The modified library is libavcodec.so*.

Panel
panelIconIdatlassian-info
panelIcon:info:
bgColor#E6FCFF

If can not find the directory in the buildroot, please check the package on the menuconfig and reconfigure it.

...

The command will encode the file 1080p.yuv to a file called stream.h264.

...

The file can be played by PC tools like PotPlayer and VLC media player.

...

The command will decode the file stream.h264 to a file called test.yuv.

...

The file can be played by PC tools like Elecard YUV viewer and YuvEye.

...