A Real-Time Video Effects ProcessorBen Gelb and Venkat ChandarDecember 14, 2005AbstractThis report describes the design and implementation of a real-time video effects processor.The processor has several capabilities useful for a TV broadcast station. First, the processorallows the user to overlay two text objects and a stored still image (in fullscreen or picture-in-picture modes). Also, the user c an draw on the TV screen using a mouse. The pr ocess or alsolets the user capture one frame of video, and supports a digital zoom around a selecta ble pointby 2x, 3x , or 4x. A bluescreen feature allows the user to filter out a background and replaceit with a stored image. A graphical user interface on a VGA monitor controls how the variouseffects are a pplied. After discussing the design in detail, we explain our testing procedure andthe main problems we had to debug. The final result is a processor with almost all of thefunctionality we originally designed.1Contents1 Overview 32 Description 72.1 PS/2 Mouse and Keyboard Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.2 Control Module (Ben Gelb) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3 Video Input Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.4 Framegrab Module (Ben Gelb) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.5 Bluescreen Module (Ben Gelb) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.6 Zoom Module (Venkat Chandar) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172.7 Overlay Module (Venkat Chandar) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.8 Output Module (Venkat Chandar) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 Testing and Debugging 244 Conclusion 28A Verilog Code 29A.1 Bluescreen Code - bluescreen.v . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29A.2 Framegrab Module Code - framegrab.v . . . . . . . . . . . . . . . . . . . . . . . . . . 32A.3 GUI I nterface Objects - guiobjects.v . . . . . . . . . . . . . . . . . . . . . . . . . . . 35A.4 Overlay Text Pixel Generation C ode - cstringdisp.v . . . . . . . . . . . . . . . . . . . 38A.5 VGA Text Pixel Generation Code - prefetch cstring.v . . . . . . . . . . . . . . . . . 39A.6 Control Module Code - control.v . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42A.7 Zoom Modu le - zoom.v . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59A.8 Overlay Module - overlay.v . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68A.9 Video Output Module - video.v . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78A.10 Video Output Module - videoencode.v . . . . . . . . . . . . . . . . . . . . . . . . . . 80A.11 Labkit Module - avtest.v . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82List of Figures1 Video Effects Processor in Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 System Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Control Module Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Font FSM State Transition Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 Framegrab Module Block Diagr am . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 Framegrab FSM State Transition Diagram . . . . . . . . . . . . . . . . . . . . . . . . 157 Bluescreen Module Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Bluescreen FSM State Trans ition Diagram . . . . . . . . . . . . . . . . . . . . . . . . 179 Zoom Module Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1810 Overlay Module Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2021 OverviewThe Real-Time Video Effects Processor is a system designed to aid in the production of live televi-sion broadcasts. It allows the overlay of graphics and text to the video stream, as well as drawingcapabilities. …
View Full Document