Home > libshbeu

libshbeu

Libshbeu is a project mainly written in C and SHELL, based on the MIT license.

A library for controlling Renesas SH-Mobile BEU (Blend/Overlay) hardware

libshbeu

libshbeu: A library for controlling the SH-Mobile BEU.

The SH-Mobile processor series includes a hardware blend engine unit (BEU) that supports image overlay.

This source archive contains:

  • src/libshbeu: the libshbeu shared library
  • src/tools: commandline tools

libshbeu API

libshbeu allows both synchronous and asynchronous access to the BEU. The synchronous API provides a one-shot function shbeu_blend(). The asynchronous API replaces this with a similar but non-blocking function, shbeu_start_blend(), and a corresponding shbeu_wait().

Please see doc/libshbeu/html/index.html for API details.

shbeu-display

shbeu-display is a commandline program for displaying raw image or video files. It uses the SH-Mobile BEU to perform simultaneous colorspace conversion and blending on each input frame. It allows the user to pan the foremost image.

Usage: shbeu-display [options] -i <input file>
Overlays raw image data using the SH-Mobile BEU and displays on screen.
Options and input file can be specified for up to 3 inputs, e.g.
  shbeu-display -s vga -i vga.yuv -s qvga -i qvga.rgb -s qcif -i qcif.rgb

Input options
  -c, --input-colorspace (RGB565, RGBx888, NV12, YCbCr420, NV16, YCbCr422)
                         Specify input colorspace
  -s, --input-size       Set the input image size (qcif, cif, qvga, vga, d1, 720p)

Control keys
  Space key              Read next frame
  Cursor keys            Pan
  =                      Reset panning
  q                      Quit

Miscellaneous options
  -h, --help             Display this help and exit
  -v, --version          Output version information and exit

File extensions are interpreted as follows unless otherwise specified:
  .yuv    YCbCr420
  .420    YCbCr420
  .422    YCbCr422
  .rgb    RGB565
  .565    RGB565
  .x888   RGBx888

SH-Mobile

The SH-Mobile processor series includes a hardware video engine unit that supports colorspace conversion, rotation and scaling. Some models also include support for camera capture, JPEG processing, and DSP instructions.

Kernel configuration

libshbeu uses the Linux kernel UIO support for the SH-Mobile BEU, this is not in the mainline kernel. You will have to manually add this capability.

The following kernel boot option reserves physically contiguous memory for BEU use:

memchunk.beu0=4m

License

See the file COPYING for details.

Previous:StagedIT