How to setup tvp5151 video decoder

From IGEP - ISEE Wiki

Revision as of 11:21, 8 June 2012 by Manel Caro (talk | contribs) (Play with TVP5151)

Jump to: navigation, search

What is?

The TVP5151 device is an ultralow-power NTSC/PAL/SECAM video decoder. Available in a space-saving 48-terminal PBGA package or a 32-terminal TQFP package, the TVP5151 decoder converts NTSC, PAL, and SECAM video signals to 8-bit ITU-R BT.656 format. Discrete syncs are also available. The optimized architecture of the TVP5151 decoder allows for ultralow power consumption. The decoder consumes 138-mW power under typical operating conditions and consumes less than 1 mW in power-down mode, considerably increasing battery life in portable applications. The decoder uses just one crystal for all supported standards. The TVP5151 decoder can be programmed using an I2C serial interface.

The TVP5151 decoder converts baseband analog video into digital YCbCr 4:2:2 component video.

TVP5151 Features

  • Accepts NTSC (J, M, 4.43), PAL (B, D, G, H, I, M, N, Nc) and SECAM (B, D, G, K, K1, L) Video.
  • Supports ITU-R BT.601 Standard Sampling.
  • High-Speed 9-Bit Analog-to-Digital Converter (ADC).
  • Two Composite Inputs or One S-Video Input.
  • Fully Differential CMOS Analog Preprocessing Channels With Clamping and Automatic Gain Control (AGC) for Best Signal-to-Noise (S/N) Performance.
  • Ultralow Power Consumption.
  • Power-Down Mode: <1 mW
  • Brightness, Saturation, Hue, and Sharpness Control Through I2C
  • Complementary 4-Line (3-H Delay) Adaptive Comb Filters for Both Cross-Luminance and Cross-Chrominance Noise Reduction
  • Single 27.000-MHz Crystal for All Standards
  • Internal Phase-Locked Loop (PLL) for Line-Locked Clock and Sampling
  • Subcarrier Genlock Output for Synchronizing Color Subcarrier of External Encoder
  • Variable Digital I/O Supply Voltage Range from 1.8 V to 3.3 V
  • Standard Programmable Video Output Format:
    • ITU-R BT.656, 8-Bit 4:2:2 With Embedded Syncs
    • 8-Bit 4:2:2 With Discrete Syncs
  • Macrovision™ Copy Protection Detection
  • Advanced Programmable Video Output Formats

Output Formatter

The YCbCr digital output can be programmed as 8-bit 4:2:2 or 8-bit ITU-R BT.656 parallel interface standard.
Summary of Line Frequencies, Data Rates, and Pixel Counts

STANDARDS
(ITU-R BT.601)
PIXELS PER
LINE
ACTIVE
PIXELS PER
LINE
LINES PER
FRAME
NTSC-J, M 858 720 525
NTSC-4.43 858 720 525
PAL-M 858 720 525
PAL-B, D, G, H, I 864 720 625
PAL-N 864 720 625
PAL-Nc 864 720 625
SECAM 864 720 625










Get the ISP kernel binaries

You can download the compiled images from here:

Kernel 2.6.35 (uImage)

Kernel 2.6.35 (zImage)

Kernel 2.6.35 (Modules)

TVP5151 Setup

You need the program media-ctl this program it's useful for configure the ISP.

There are two modules that you will use that are not inserted into the kernel: iommu2 (tvp5151) and isp.

You have to load these kernel modules before start:

modprobe iommu2
modprobe omap3-isp

(Note: The first load order must be the iommu2 and then the omap3-isp)

Steps to configure the ISP and TVP5151

Configure the right ISP routing.

./media-ctl -r -l '"tvp5150 2-005c":0->"OMAP3 ISP CCDC":0[1], "OMAP3 ISP CCDC":1->"OMAP3 ISP CCDC output":0[1]'

Configure the video capture setup.

./media-ctl --set-format '"tvp5150 2-005c":0 [UYVY 720x628]'

Play with TVP5151

You can use for get the captured images yavta or gstreamer as live stream.

This is the suggested yavta capture setup:

./yavta -f UYVY -s 720x628 -n 4 --capture=4 -F /dev/video2

or the gstreamer pipeline setup:

gst-launch-0.10 -v v4l2src device=/dev/video2 queue-size=1 ! video/x-raw-yuv,format=\(fourcc\)UYVY,width=720,height=628 ! omapdmaifbsink

or using gstreamer for the TCP live streaming:

Set up UDP server from IGEPv2:

gst-launch-0.10 -v v4l2src device=/dev/video2 queue-size=8 ! video/x-raw-yuv,format=\(fourcc\)UYVY ! TIVidenc1 codecName=h264enc \
engineName=codecServer resolution=720x576 ! rtph264pay pt=96 ! udpsink host=<YOUR_PC_IP> port=<PORT>

Set up UDP client on your Machine:

gst-launch-0.10 -v udpsrc do-timestamp=false port=<PORT>  caps="application/x-rtp, media=(string)video, clock-rate=(int)90000, \
encoding-name=(string)H264, payload=(int)96, ssrc=(uint)446210637, clock-base=(uint)697749128, seqnum-base=(uint)21380" ! queue \ 
! rtph264depay ! ffdec_h264 ! xvimagesink

Dependecies

  • IGEPv2 board with a Expansion board.
  • Camera with PAL output live video.
  • ISEE IGEPv2 toolchain (IGEP VM suggested)
  • Gstreamer.

BUGS Detected

Issue ID Description Affected Resolution
TVP5151-0031 TVP5151 it's not right initialized with IGEPv2 - DM3730 IGEPv2 RC board with DM3730 Patch