You are here

Ross Video

I spent three work terms at Ross Video (the first two consecutively) for a total of twelve months. During my first eight months of employment, I contributed to the first beta and first full release of Ross Video's multi-definition live video production switchers. My last work term took place a year and half later when the product was more mature.

My work involved real-time embedded systems programming in C to be run on Linux for Power PC. We developed on Linux workstations. CVS, Bugzilla, and TWiki were integral aspects of our project's management.

Most of my work revolved around two-dimensional video processing, including fade to black, pattern washes, and utility bus effects. The largest project for both terms, however, was the chroma keyer.

During my first term the goal was to finish what a previous co-op student had started. A Ross Video engineer had designed the chroma keyer and implemented the FPGA portion of it while the student had developed the software (Linux) portion of it. The software portion includes the user interface, controlling the FPGA, and performing important mathematical calculations that define the model used by the FPGA. By the end of my term, we had a fully functional chroma keyer.

When I returned to Ross Video for my last work term, time was allotted to improve the usability of the chroma keyer. I designed a new menu system that included a basic mode, intended to help the user get a good key with fewer, simpler controls. Working with the chroma key's designer, I also helped improve the quality of the key dramatically.

Following is a set of images that demonstrate the use of the chroma key with a still image. First is an image of a woman in front of a blue background that will be cut out. Notice the complicated aspects of the image, such as shadows and transparencies.

Next is the background that the woman, once cut out, will be layered over top of.

Finally, the end result.