Difference between revisions of "How to setup tvp5151 video decoder"
From IGEP - ISEE Wiki
m (→Play with TVP5151) |
m (→Play with TVP5151) |
||
Line 149: | Line 149: | ||
! rtph264depay ! ffdec_h264 ! xvimagesink | ! rtph264depay ! ffdec_h264 ! xvimagesink | ||
</pre> | </pre> | ||
+ | |||
+ | = Kernel 2.6.37.y = | ||
[[Category:Gstreamer]] | [[Category:Gstreamer]] | ||
[[Category:Software applications]] | [[Category:Software applications]] |
Revision as of 11:34, 27 August 2012
Contents
[hide]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 |
Dependecies
- IGEPv2 board with a Expansion board.
- Camera with PAL output live video.
- ISEE IGEPv2 toolchain (IGEP VM suggested)
- Gstreamer.
Kernel 2.6.35.y
Get the ISP kernel binaries
You can download the compiled images from here:
TVP5151 Setup
You need the program media-ctl this program it's useful for configure the ISP. You can download the sources from here or access to media-ctl git from here.
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. You can download the sources from here or access to yavta git from here.
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