home

Эксперимент по программного транскодированию видео на Android-устройствах

В ELiS есть модуль видео, а в нем есть возможность развернуть ферму кластеров транскодирования.

Возникла гипотеза, что для транскодирования можно использовать смартфоны и прочие устройства на Android вместо дорогих серверов.

Для проверки была написана программа, которая использует ffmpeg для Android и в результате измерений на смартфоне Honor 6X с 8 ядрами Cortex-A53 2 ГГц получены результаты по транскодированию видео в сравнении с AMD Ryzen 3600 (6 ядер по 3600 ГГц).

В результате смартфон транскодировал на тестовом FullHD видео в 10 раз медленнее Ryzen 3600, а производительность составил 1.5 кадра в секунду для VP9 и 5 кадров в секунду для H.264.

Разница в производительности примерно соответствует разнице в производительности CPU на базе geekbench (https://browser.geekbench.com/android_devices/369 и https://browser.geekbench.com/v5/cpu/6559228) при этом ffmpeg может использовать аппаратное ускорение только для декодирования видео, а для кодирования встроенные в смартфон аппаратные кодировщики не используются (https://trac.ffmpeg.org/wiki/HWAccelIntro).