Разработать приложение с использованием GStreamer которое могло бы одновременно:
- Отображать видео
- Стримить по UDP
- Записывать видео
Общие требования
- Поддержка платформ OSX/Windows (на выбор)
- Поддержка >= Android 4.0
- Gst 1.8.+
- В качестве источника видео можно использовать videotestsrc
- Использование любых готовых плагинов (с подходящей лицензией) только приветствуется
Требования для мобильного приложения:
- Первая Activity для отображения fullscreen видео
- Вторая Activity для настроек плейера
Требования для desktop приложения:
- Single window
- Настройки должны быть в диалоговом окне
- Для реализации UI использовать один из кросс-платформенных фреймворков Qt или GTK+
Требования для плейера:
- Fullscreen видео можно использовать GLSurfaceView - андроид, и обычное окно для Desktop
- play/stop через ToggleButton
Требования для UDP стриминга:
- start/stop через ToggleButton
Требования для записи:
- start/stop через ToggleButton
- Разбивать записываемое видео на части
- Ротация файлов (перезаписывать более старые файлы более новыми)
- Настройка записи должна включать: размер одного файла, максимально количество файлов, директория для записи
- поддержка записи на external storage в >= Android 4.4 (используя SAF)
- кодек - h264, контейнер - mp4
- в случае прерывания записи, данные не должны теряться