Wednesday, June 11, 2008

Video block dialog ...

The modules for the video processing:

  • Raw video (after A/D) comes in with NTSC or PAL format (720 x 480), we down-sample to 352 x 240 during the processing on DSP. The output information are sent to PPC and will be up-sample according to percentage.
  • Raw video is used for processing, another channel of raw video is used for compression.
  • After the video-input driver is called, 3/5 buffers are used for the video. The buffers are put in 3 queues: ready, used and unused(whatever), GetBuffer() function to get the pointer to the newest buffer in ready queue.
  • There are shared memory between DSP and PPC. DSP sends information here and PPC can read it.
  • There are also 3/5 buffers for output.
  • The output is MPEG4, it is decoder locally, with size D1(720x480), half-D1, CIF or 4CIF. It is difficult to decoder 4CIF for lots of channels meanwhile.
  • DPS CPU is 351Mhz, TI is 600Mhz
  • Ram is 128M, Flash is 64M, include NOR(boot/system) and NAND (our files)
  • video streaming

Several problems I met :

  • convert YUV444 to YUV420, or YUV 422(say 420 is to pick the left-top one in 4 pixels, 422 is to pick the left 2 in 4 pixels). Some YUV444 use interleave, it looks like y,u,v,y,u,v in the memory. Some use yyyyy ...uuuuu.....vvvvv
  • convert ARGB (32bit 8-8-8-8) to RGB (0-4-5-4 bits) [should be 5-6-5, --6/26/09]
  • rotate a 16x16 image

Embedded, real-time system

  • concept of embedded. (wiki:) is a special-purpose computer system designed to perform one or a few dedicated functions, often with real-time computing constraints. It is usually embedded as part of a complete device including hardware and mechanical parts. Properties: (1) usually for specified application. (2) use micro-processor as core. (3)strict requirement for timing and stability. (4) Automatic operation.
  • how to define real-time system and high performance system. The point is "guarantee" to reach a line.

No comments:

Post a Comment