Codem разработан, чтобы быть гибким, масштабируемым и надежным. Гибкая, поскольку ее легко расширять, масштабируемая, поскольку легко добавлять дополнительные транскодеры, и надежная, поскольку каждая часть системы действует независимо от других. Codem построен с использованием технологий с открытым исходным кодом, которые доказали свою ценность в различных производственных средах.
Codem состоит из двух отдельных пакетов, которые взаимодействуют через JSON API. Планировщик встроен в Ruby on Rails и занимается планированием и обработкой заданий. Транскодер встроен в NodeJS и выполняет фактическое перекодирование видео через ffmpeg. Оба пакета можно использовать независимо друг от друга, и они сами предоставляют простой JSON API. Если вам нужно больше мощности транскодирования, вы можете легко настроить больше экземпляров Transcoder. Просто настройте другой транскодер, добавьте его в планировщик, и он начнет принимать задания.