KTV Demo

Document created by Tony Zheng Employee on Mar 3, 2016Last modified by Tony Zheng Employee on Sep 21, 2016
Version 18Show Document
  • View in full screen mode

The KTV Demo is a common user case for KTV OEM. In this charpter, we will see what it is and how to use it.

HW Platform


SW Platform

3.14.52_1.0.0-ga, fb backend

Display Connection

LVDS0 XGA 1024*768 RGB666                          - IPU1 DI0

HDMI Display1920*1080@60                              - IPU0 DI1

HDMI Display1920*1080@56 via sii902x            - IPU0 DI0

LVDS1 XGA 1024*768 RGB666                          - IPU1 DI1

User case

The demo has following output:

Display #UIVideo StreamOutput Resolution
DISP0-LVDS03D Cube@60fps1920x1080@24fps (overlay)XGA(1024x768,RGB666)
DISP1-HDMI3D Cube@60fps720p@20fps (overlay)1080P@60(1920x1080,RGB24)
DISP2-SII902X3D Cube@60fpsN/A1080P@56(1920x1080,RGB24)

The DISP0 and DISP1 has overlay framebufffer, so output UI to bottom framebuffer and output video stream to overlay framebuffer.

Run Demo

The customer can refer to following script:

echo "KTV demo start!"
# Set environment variables
export FB_FRAMEBUFFER_0=/dev/fb0
export FB_FRAMEBUFFER_1=/dev/fb2
export FB_FRAMEBUFFER_2=/dev/fb4
export FB_FRAMEBUFFER_3=/dev/fb5

# Run cube on DISP0,DISP1, DISP3
echo 0 > /sys/class/graphics/fb0/blank
./cube display=0 &
sleep 1
echo 0 > /sys/class/graphics/fb2/blank
./cube display=1 &
sleep 1
echo 0 > /sys/class/graphics/fb4/blank
./cube display=2 &

echo "Open DISP0(LVDS0)"
gst-launch-1.0 playbin \
  uri=file:///home/root/ktv_demo/1080p_24fps.mp4 \
  video-sink="imxv4l2sink device=/dev/video17" &
sleep 3
echo "Open DISP1(HDMI)"
gst-launch-1.0 playbin \
  uri=file:///home/root/ktv_demo/720p_20fps.mp4 \
  video-sink="imxv4l2sink device=/dev/video19" &
#sleep 3
echo "Open DISP3(LVDS1)"
gst-launch-1.0 playbin \
  uri=file:///home/root/ktv_demo/720p_20fps.mp4 \
  video-sink="imxv4l2sink device=/dev/video21" &
sleep 3


The demo image can be downloaded at:

\\\public_share\ZhengTao\KTV Demo

VPU frequency

The vpu can run at 352MHz or  266MHz. We run it at 352MHz in this demo. The customer can configure the VPU frequcency from Linux kernel Kconfig options.


Utilization: 33%

Overall Bus Load: 71%

For 1080p@24fps, the real fps can only up to 13.319fps. The GPU may influence VPU performance.