На чистом PHP вряд ли. Понадобится библиотека для работы с видео. Скорее всего ffmpeg.
Проще всего, наверное, установить на сервер
ffmpeg и запускать его из PHP через
exec() . Это проще, но имеет серьёзные недостатки:
- перекодирование может занять длительное время, а PHP по умолчанию имеет таймаут в 30 секунд для ответа веб-серверу.
- параллельно запустить несколько перекодировщиков для сервера тяжело – ffmpeg занимает немало памяти и грузит процессоры.
Поэтому по-хорошему надо организовать очередь задач.