Прототип (MVP) приложения на iOS (видео стриминг)
20 000 руб. за проект
•
безналичный расчёт
Ищу разработчика iOS для написания прототипа мобильного приложения.
Желателен опыт работы с камерой / файлами / live streaming.
Язык может быть Swift или Objective C. Рассмотрим предложения и на Xamarin.
В случае успеха с прототипом возможно последующее сотрудничество по развитию приложения
Прототип должен быть стабильным (не падать даже при продолжительном стриминге) Код должен быть читаемым и настройки в переменных
Далее подробное ТЗ:
Функции прототипа
1) Live Трансляция видео с камеры по протоколу RTMP
Транслирование производится на предопределенный RTMP url с стриминг ключом введенным пользователем (конкатенация url + ключ).
Следующие параметры стриминга должны быть настраиваемы в коде:
- Bitrate (например 2500 kbps)
- Framerate (например 30 fps)
- Количество кадров между keyframe (например 15)
- Разрешение (например 720p)
- Write buffer size (131072) - lower = less delay, worse throughput. Higher = better throughput, more delay
Будет плюсом если можно настроить (в коде)
- Send buffer size (настройки пакетов TCP)
- Maximum write chunk size
- adaptive bitrate (автоматическое изменение битрейта от загружености канала)
- FLV buffer cache window (например 5 s)
2) Одновременное сохранение видео в память телефона
Следующие параметры записи должны быть настраиваемы в коде:
- Resolution (например запись в 1080p при стриминге в 720p)
- Bitrate (может быть отличный от битрейта стриминг видео)
- Framerate (например 30fps)
Интерфейс приложения
- При первом запуске приложения пользователь вводит streаming ключ (например шестизначное число)
- Стриминг ключ сохраняется в приложении
- Приложение проверяет ключ по API и
- Если ключ не найден показывает ошибку и предлагает ввести еще раз
- Если ключ найден переключается на главный экран
- На главном экране 100% места занимает вид камеры (ориентация только горизонтальная)
- Поверх вида камеры расположен заголовок видео (из того же API запроса)
- Красная круглая кнопка - старт трансляции и записи
- При нажатии кнопки начинается RTMP стрим и запись в локальный файл. Кнопка становится красным квадратом - остановка записи
- При нажатии кнопки остановки останавливается RTMP стрим и заканчивается запись видео в локальный файл
- Во время трансляции поверх видео показывать время прошедшее с начала (в формате 00:00:00), fps и текущую скорость аплоуда / текущее значение bitrate (если возможно)
Настройки камеры (регулируемые в коде)
- включить / выключить возможность нажимать на экран для фокуса и яркости (если возможно)
- настройки яркости (brightness) (если возможно)
Мокап
Спасибо за внимание
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.