Video Encoding Service

Linux, Apache, MySQL, PHP 04/2009 - 10/2012 http://clickstreamtv.com
Technologies: Linux, PHP 5, MySQL, Object Oriented Programming, Amazon Web Services (S3, EC2), FFMpeg, Edgecast CDN, Ruby, Custom API, HeyWatch.com, Encoding.com
Dates: 04/2009 - 10/2012 (Full time employee of ClickStreamTV)
About:

ClickStreamTV is a fully featured online video platform which includes a multi-format video encoding system. I had the privilege of being tasked with re-writing the original system in order to improve performamce, reliability, and to reduce costs. The data structure was already in place, so one of the constraints was the need to seamlessly integrate with it.

This new system is purely object oriented and utilizes a number of vps servers as well as outside services. It consists of two main parts: a dispatcher and encoders. The main dispatching component is responsible for:

  1. polling for queued videos and determining the appropriate encoding route
  2. sending encoding requests, tracking and updating status of each job
  3. monitoring encoding service and shutting down as appropriate
Individual encoders are responsible for:
  1. transferring the appropriate source file
  2. encoding in multiple formats - as dictated by the dispatching server
  3. updating dispatcher with status
  4. transferring encoded files to the appropriate locations