Написать powersheell (или vbs) скрипт для записи монитора через ffmpeg и помещения его в шедулер

Задание закрыто
Стоимость:3 000 рублей
Срок выполнения:2 дня
Варианты оплаты:Планируется использовать Безопасную сделку
Дата публикации:2024-07-17 22:08
Обновлено:2024-07-17 22:22
Был(а) на сайте:2024-07-21 11:27

Написать powersheell (или vbs) скрипт для записи монитора через ffmpeg и помещения его в шедулер

 
Задача

Необходим скрипт с помощью которого будет в стэлс-режиме записываться экран Windows 10. Складываться файлами с именованием даты до секунды. Перезапускаться шедулером каждые 5 минут. Для понимания минимальный пример скрипта:

"Get-Date -Format 'yyyy-MM-dd-HH-mm-ss' -OutVariable DATE
ffmpeg.exe -f gdigrab -framerate 2 -i desktop | С:\Users\n\AppData\Local\screen_capture\files\$DATE.mkv

У этого минимального скрипта есть недостатки:
1. При запуске/перезапуске скрипта шедулером "мигает" кратковременно окно консоли powershell.
2. Мерцает курсор мыши при записи. Это недостаток реализации самого ffmpeg, но как понял через hex-эдитор можно заменить пару значений файла avdevice.dll. Если есть консольные опенсорс-утилиты и умеющие в стелс и не имеющие данного недостатка с мерцанием курсора мыши, то приемлемо.

Оставлять заявки могут только авторизованные пользователи.
virgil rs

Фрилансерский уклад един!

Специализация: IT-технологии и Разработка
    Добрый день, готов сделать
    Опыт написания скриптов под ffmpeg - 2 года
    Николай Шикин

    Всегда иду до конца! +7 (978) 124-84-90

    Специализация: IT-технологии и Разработка
    Здравствуйте!
    Готов взяться за ваш заказ прямо сейчас!
    С заданием внимательно ознакомился!

    Примеры моих работ

    Сайт бесплатно - ДА
    3д проект каркасного дома 8х8 128м2
    PWA верства на Vue фреймворке
    06:38 18.07.24
    Цена окончательная?
    Для решения вашей задачи можно использовать скрипт на PowerShell, который будет запускаться планировщиком задач Windows. Вот пример такого скрипта:

    # Получаем текущую дату и время
    $date = Get-Date -Format 'yyyy-MM-dd-HH-mm-ss'

    # Создаем путь к файлу с датой
    $filePath = "C:\Users\n\AppData\Local\screen_capture\files\$date.mkv"

    # Запускаем команду для захвата экрана
    Start-Process -FilePath "ffmpeg.exe" -ArgumentList "-f gdigrab -framerate 2 -i desktop -c:v libx264 $filePath" -NoNewWindow -Wait


    Этот скрипт сначала получает текущую дату в формате yyyy-MM-dd-HH-mm-ss, затем создает путь к файлу, используя эту дату. После этого он запускает процесс ffmpeg.exe с параметрами для захвата экрана и сохранения видео в указанный файл. Параметр -NoNewWindow предотвращает появление окна консоли, а -Wait позволяет скрипту ждать завершения процесса перед продолжением работы.

    Чтобы этот скрипт запускался каждые 5 минут, вам нужно создать задачу в планировщике задач Windows. Вот как это сделать:

    1. Откройте Планировщик задач (Task Scheduler) в Windows.
    2. Нажмите "Создать задачу" (Create Task).
    3. Введите имя задачи и выберите "Определить триггеры" (Triggers).
    4. Выберите "Повторяющаяся задача" (Daily) и установите интервал повторения на 5 минут.
    5. Вернитесь к предыдущему экрану и выберите "Действия" (Actions).
    6. Добавьте новое действие и выберите "Запустить программу".
    7. В поле "Программа или сценарий" введите полный путь к вашему скрипту PowerShell.
    8. Убедитесь, что в поле "Добавить аргументы" ничего не указано.
    9. Сохраните задачу и она будет автоматически запускаться каждые 5 минут.

    Если вы хотите скрыть курсор мыши при записи, вы можете попробовать использовать другой инструмент для захвата экрана, который поддерживает эту функцию. Например, OBS Studio имеет возможность скрывать курсор мыши во время записи.
    Доброго времени суток, есть уже готовый скрипт, сейв может делать по указанной директории или выгружаться в облако, если интересно - пишите.

    Оставлять заявки могут только авторизованные пользователи.

    Другие открытые задания:

    поиск заданий