AWS эластичный транскондер или работает ffmpeg на EC2? Что дешевле?

У меня есть назначение преобразовать большой набор видео в ogg, webm и mp4 для разных разрешений плюс мобильный и т.д. Я рассматриваю возможность запуска очередей заданий на транскодирование с использованием ffmpeg или использования эластичного транскодера. ( Фоновая информация: исходные файлы уже находятся на S3, и веб-приложение полностью интегрировано в AWS SDK, а файлы добавляются ежедневно, в режиме реального времени не требуется)

Я знаю, что использование EC2 и ffmpeg потребует некоторого времени и усилий, а не просто использования API транскондеров. Но если есть хорошая экономия средств...

Поэтому у меня есть два вопроса

1) AWS говорит, что плата составляет примерно 0,015 долл./мин видео (SD). Мой вопрос в том, что каждый выходной файл взимается отдельно. Документы говорят, что они поддерживают до 30 выходов для одной и той же работы. Но неясно, идет ли это за минуту работы или за минуту каждого выходного формата (0,45 доллара за минуту видео за 30 форматов вывода)?

2) Есть ли у кого-нибудь опыт использования EC2 и ffmpeg в этом случае? Это дешевле, чем транскондер?

В прошлый раз, когда я разработал что-то подобное, я не учитывал затраты на ввод-вывод для EC2, а I/O в итоге стоил больше, чем сам экземпляр. Есть ли какие-либо оптимизации кода, которые я могу сделать, чтобы сделать его более дешевым? (кроме использования выборочных экземпляров, более дешевых регионов и т.д.).

Ответ 1

Служба ретрансляции AWS поддерживает только MP4/H.264/AAC. В настоящее время он не поддерживает WebM/VP8/Vorbis или Ogg/Theora/Vorbis (которые представляют собой две другие комбинации контейнеров/видео/аудио, которые вы ищете).

Таким образом, пользовательская установка ffmpeg является обязательным условием для вашего назначения, но вы можете очень быстро запутать юридические проблемы, если используете неправильную комбинацию программных библиотек. Это законное минное поле по вопросам патентного права.

Как только вы закончите это, вам нужно выяснить, что вы ищете. Дешево и медленно, быстро и дорого. Построив это раньше, я бы рекомендовал ничего меньше, чем экземпляр EC2 XL. Если вы попытаетесь использовать Micro или Small, будьте готовы потратить часы и часы на ожидание завершения кодирования.

Вам также нужно подумать о том, как запускать кодировки при загрузке, если это то, что вы собираетесь делать. ETS этого не делает - вы должны запускать их вручную.

Обновление: ElasticTranscoder теперь поддерживает по умолчанию Webm VP8 и VP9, ​​HLS и несколько других форматов.