Case Studies
FPGA H.264 Video Processor for Surveillance Camera
In digital surveillance video cameras the latency incurred to filter and compress video must not be noticeable to an end user who is used to using analog systems that incur no delays. Today's cameras typically use H.264 video compression, which can consume enormous computing time and contribute to significant latencies. To reduce latencies a custom FPGA was implemented that performs noise filtering, deinterlacing and H.264 compression interfacing to a Davinci DSP. read more »
Coaxitron PTZ
A controller for controlling a PTZ camera using the Pelco Coaxitron protocol was implemented, which consisted of a custom FPGA, a Linux based device driver and protocol stack. The Coaxitron protocol controls a PTZ camera via the existing video coax cable rather than a dedicated RS485 cable, thus reducing installation costs. Commands are sent to the camera from the controller on specific lines of the video frame. To meet the tight timing requirements the design required a custom FPGA interfacing to software elements running under Linux. read more »
FPGA H.264 Video Decoder
In this project a FPGA based H.264 decoder was implemented. In surveillance systems there is a need to view the video of numerous cameras on a single screen. H.264 video compression has become the de-facto standard in such systems, replacing older, less efficient MPEG4 standards. The decoding and rendering of H.264 streams is very time-intensive requiring enormous computing power. read more »
FPGA Video Noise Filter
A two-dimensional bilateral video filter was implemented to remove noise artifacts from a camera in real-time. The design was performed by DSP engineers in C but the implementation was in an FPGA. A means was needed to bridge between these disciplines to meet tight schedule demands. read more »
Embedded RTP Network Media Streamer with Lip-Sync
A standards compliant RTP Media Server was needed to stream H.264 video and G.711 audio from a TI Davnici DSP based surveillance camera running under Linux. The existing infrastructure consisted of an encoder that compresses video using Baseline H.264 running under Linux. Ginngi was asked to implement an embedded RTP server capable of streaming synchronized audio and video over RTP with full lip synchronization. read more »
H.264 Video Streaming Encoder
An embedded video encoder was developed that accepts analog video at its input, and implements a RTP compliant video and audio streaming Ethernet server using H.264 compression and proprietary deinterlacing techniques. In addition a full HTTP server was implemented to provide remote configuration and monitoring using a custom HTTP API library. read more »
FPGA Video Deinterlacer Core
An FPGA core was implemented to perform deinterlacing of standard definition video prior to its being compressed and streamed onto a network. Existing algorithms using simple Bob/Weave approaches were rejected because of their poor performance during scenes that have movement. The resulting design uses a sophisticated algorithm that performs pixel computation based on a spatial-temporal model and motion detection, all on a pixel-by-pixel basis. The design was successfully implemented on a Virtex-5 FPGA. read more »
Power Over Ethernet
Our customer was designing an Ethernet based video encoder and needed an efficient POE (Power over Ethernet) solution. Existing POE modules were not sufficient because they used input voltages of 45 V from the line whereas our system also needed to interface to standard 12-24V adapters. A POE module could be used but this would then require another regulator to interface to the 12-24V adapters. So a proprietary solution was needed. read more »
PTZ (Pan-Tilt-Zoom) Protocols
PTZ Surveillance cameras can be mechanically controlled via remote control using a software protocol over a RS485 link. Ginngi implemented a number of common protocols to support cameras such as Pelco, Samsung, Sony and others. read more »
Embedded Linux for Davinci DSP/ARM
An embedded Linux OS was needed for the TI Davinci DSP/ARM that provided software services for the architecture of the customer system. The effort consisted of modifications to the kernel, completion of a BSP, the writing of various device drivers to interface to proprietary hardware and the development of a RTP streaming media server. read more »
ginngi engineering