Finally MediaCoder is stepping on its way to becoming a distributive transcoder. I decided to design a frame level distributing mechanism instead of file-level distributing. The system is made up of a master, which performs decoding and data distribution, and one or more agents, which receive raw video frame, encode them and send the encoded stream back to the master. Users will feel like still using a desktop version of MediaCoder, while the encoding is actually done on another one or more machines. This approach has several advantages:
- No need to expose the whole file to the encoding machine with OS file sharing.
- It’s possible to implement segmented + distributed transcoding
- The decoding is still done by a Windows box (where MediaCoder runs), which has better decoding capability. This also helps to unify the decoding standard in a distributed transcoding system.
- The transcoding agents need no storage for intermediate data during transcoding. The frames are transmited over LAN, encoded and send back over LAN.