Заказ закрыт
Требуется Rust-разработчик для создания CLI-утилиты записи экрана на macOS

Откликнуться
f
Заказчик
Отзывы фрилансеров: + 0 - 0
Зарегистрирован на сайте 4 года и 11 месяцев
Бюджет: по договоренности
Ищу Rust-разработчика для создания высокопроизводительной CLI-программы для macOS, предназначенный для синхронной записи нескольких потоков данных:

*   Видео с экрана (весь экран, окно или выбранная область).
*   Системный звук.
*   Звук с микрофона.
*   События ввода (клавиатура, мышь, изменения курсора).
*   Видео и аудио с внешних устройств (например, iPhone/iPad).

Главная задача — обеспечить идеальную синхронизацию всех записываемых дорожек с помощью точных временных меток, что критически важно для последующей обработки и монтажа. Управление утилитой должно осуществляться через терминал, а параметры записи — передаваться в формате JSON через `stdin`.

Это сложный и интересный проект, требующий глубоких знаний в системном программировании под macOS и языке Rust. Я предоставляю подробное техническое задание, описывающее структуру, CLI, форматы данных и жизненный цикл приложения.

**Ключевые задачи:**

1.  **Реализация CLI:** Создать интерфейс командной строки (`discover`, `record`).
2.  **Разработка модулей записи:** Реализовать отдельные асинхронные рекордеры для каждого источника данных, используя нативные фреймворки macOS:
    *   **Видео:** `ScreenCaptureKit` для захвата экрана.
    *   **Аудио:** `CoreAudio` для системного звука и звука с микрофона.
    *   **События:** `CoreGraphics` для отслеживания действий мыши и клавиатуры.
3.  **Управление сессиями записи:** Реализовать логику паузы (`SIGTSTP`) и возобновления (`SIGCONT`), которая создает отдельные "сессии" (непрерывные отрезки записи).
4.  **Синхронизация и вывод данных:** Обеспечить точную синхронизацию всех потоков. Организовать сохранение данных в строго определенных форматах: медиафайлы (`.mp4`, `.m4a`), JSON-файлы событий и итоговый `metadata.json`.
5.  **Обеспечение надежности:** Реализовать механизмы для обработки высокого "давления" данных (backpressure), рассинхронизации часов и корректной обработки ошибок согласно ТЗ.

**Требования к кандидату:**

*   **Обязательные навыки:**
    *   Отличное владение языком **Rust**, включая асинхронное программирование и управление памятью.
    *   Опыт создания CLI-приложений.
    *   Умение работать с системными сигналами Unix (`SIGTERM`, `SIGCONT`, и т.д.).

*   **Желательные навыки:**
*  Опыт разработки под **macOS**.
    *   Глубокое понимание и опыт работы с нативными фреймворками macOS: **`ScreenCaptureKit`**, **`CoreAudio`**, **`CoreGraphics`**. Опыт с их Rust-обертками (`screencapturekit-rs`, `core-audio-rs`) является огромным плюсом.
    *   Опыт работы с `AVFoundation` для захвата видео с внешних устройств.
    *   Опыт низкоуровневой оптимизации производительности.
    *   Знакомство с кодовой базой похожих open-source проектов.

**Что я предлагаю:**

*   Исчерпывающее техническое задание.
*   Возможность поработать над сложным и интересным проектом с дальнейшим сотрудничеством.

Если вы готовы взяться за этот вызов и обладаете необходимыми навыками, пожалуйста, откликнитесь на проект. Я буду рад обсудить детали и ответить на ваши вопросы.
Разделы:
Опубликован:
24.06.2025 | 08:58 [поднят: 24.06.2025 | 08:58]
Заказ находится в архиве
Откликнуться Посмотреть другие заказы

Теги: написать программу, создать программу, разработать программу, разработчики программ, прикладной программист

Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».