EBC Exercise 20 The Display SubSystem (DSS)

From eLinux.org
Revision as of 11:28, 2 September 2011 by Yoder (Talk | contribs) (Initial page)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

This is the first of N labs that explore the video system drivers. The labs demonstrate the Linux V4L2 and FBdev drivers as well as basic file I/O, through four small applications: on-screen display (OSD), video recorder, video player, and video loop-thru (video-capture copied to video-display). It's based on the materials used in TI's DaVinci System Integration using Linux Workshop. The workshop is based on the DVEVM. I've converted those materials to the BeagleBoard.

This lab shows three ways to write directly to the framebuffer (/dev/fb0) on the Beagle:

  1. Write a single value to the entire framebuffer
  2. Write the pixel values based on a formula
  3. Read a bmp image and write it

The following labs will show how to bring in live video from a web cam via V4L2 and save it to a file, write video from a file to a video framebuffer (/dev/fb1), and finally move live video from a web cam to the framebuffer. A future lab may show how to process the video on the DSP before displaying it.

This is the first of 4 exercises:

  • 10: You will build an on-screen display for the your device using the FBDEV
driver – INSPECTION LAB only.
  • 11: Examines v4L2 video capture via a simple video recorder application – INSPECTION LAB only.
  • 12: Examines the v4L2 display driver using via a video display application. This application plays back the file captured in lab 07b – INSPECTION LAB only.
  • 13: You will combine the recorder and player applications into a video loop-thru application using memcpy to transfer data between capture and display drivers.
  • 14: You will modify lab07d to perform video loop-thru via pointer passing between capture and display drivers. (More efficient)