Здравствуйте.
Linux Mint 19.3 x64
Сотрудники колл-центра записывают звонки пациентов в программу, программа передаёт данные врачам. Иногда, данные не поступают к врачу. Тогда звонит пациент и спрашивает, почему не приехал врач.
Появилась идея фиксировать происходящее на экране сотрудников колл-центра, чтобы понимать кто и в чём ошибается.
Нашел интересное решение, в консоли с помощью FFmpeg.
Установил:
sudo apt install ffmpeg
Запустил запзапись в консоли:
ffmpeg -f x11grab -r 25 -s 1920x1080 -i: 0.0 -vcodec huffyuv screencast.avi
Запись идет, но проблема в том, что каждая секунда видео занимает примерно 10 мегабайт, что очень много. Как можно сжимать видео прямо во время записи?
Запись видео с экрана (скринкаст) как средство фиксирования
Как правильно задавать вопросы Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа. Общая рекомендация по составлению тем: 1. Для начала воспользуйтесь поиском форума. 2. Укажите версию ОС вместе с разрядностью. Пример: LM 19.3 x64, LM Sarah x32 3. DE. Если вопрос касается двух, то через запятую. (xfce, KDE, cinnamon, mate) 4. Какое железо. (достаточно вывод
inxi -Fxz
в спойлере (как пользоваться спойлером смотрим здесь)) или же дать ссылку на hw-probe 5. Суть. Желательно с выводом консоли, логами. 6. Скрин. Просьба указывать 2, 3 и 4 независимо от того, имеет ли это отношение к вопросу или нет. Так же не забываем об общих правилах Как пример вот
-
Автор темы - Сообщения: 178
- Зарегистрирован: 22 ноя 2019, 19:12
- Благодарил (а): 98 раз
- Поблагодарили: 9 раз
- Контактная информация:
Запись видео с экрана (скринкаст) как средство фиксирования
Решение
Перейти к ответу ➙
Пример как узнать есть ли файл и изменить ему имя
Вариант когда можно сразу задавать дату в имени файла
Код: Выделить всё
if [ -e /путь/до/файла ]
then
mv /путь/до/файла /путь/до/нового/места/хранения
fi
Код: Выделить всё
ffmpeg -f x11grab -r 5 -s 1920x1080 -i :0.0 -vcodec mpeg4 screencast_$(date +"%d_%m_%Y").avi
Перейти к ответу ➙
-
- Сообщения: 10050
- Зарегистрирован: 27 июн 2017, 13:36
- Решено: 129
- Откуда: Нижний Тагил
- Благодарил (а): 776 раз
- Поблагодарили: 1958 раз
- Контактная информация:
Запись видео с экрана (скринкаст) как средство фиксирования
ogankvik, можешь использовать OBS Studio. Там можно настроить запись очень гибко. Вот только все равно запись одного рабочего дня будет весить много. Да и устанешь потом просматривать. Проще, если есть доступ до разработчиков программы, пнуть их(разработчиков) чтоб сделали так что нужно заполнить определенные поля и только после этого заявка будет передана, а иначе она не закрывается с ошибкой
-
Автор темы - Сообщения: 178
- Зарегистрирован: 22 ноя 2019, 19:12
- Благодарил (а): 98 раз
- Поблагодарили: 9 раз
- Контактная информация:
Запись видео с экрана (скринкаст) как средство фиксирования
Спасибо, OBS Studio классная программа, но она требует много внимания.
Мне нужно чтобы запись сама включалась вместе с загрузкой ПК. Компьютеров много, нужно чтобы всё работало само.
Мне нужно чтобы запись сама включалась вместе с загрузкой ПК. Компьютеров много, нужно чтобы всё работало само.
-
- Сообщения: 4511
- Зарегистрирован: 21 июн 2017, 18:09
- Решено: 99
- Благодарил (а): 51 раз
- Поблагодарили: 1995 раз
- Контактная информация:
Запись видео с экрана (скринкаст) как средство фиксирования
Как бы - какой кодек выберешь в параметрах ffmpeg, так оно сжимать и будет. Разумеется - чем сильнее сжатие, тем больше ресурсов будет жрать.
Я бы еще посоветовал рассмотреть вариант - сбросить в записи количество кадров в секунду. Тоже параметры есть.
-
- Сообщения: 844
- Зарегистрирован: 12 авг 2017, 09:09
- Решено: 13
- Откуда: Ростов-на-Дону
- Благодарил (а): 29 раз
- Поблагодарили: 204 раза
- Контактная информация:
Запись видео с экрана (скринкаст) как средство фиксирования
Установите imagemagick и scrot.
scrot будет сохранять снимки экрана, imagemagick будет сжимать изображения в png8.
Задайте через автозагрузку запуск следующего сценария, который будет сохранять снимки экрана с заданной периодичностью.
Для эффективности формата png необходимости выключить обои.
В таком виде за рабочий день будет набегать 2-3 сотни мегабайт.
Код: Выделить всё
sudo apt install imagemagick scrot
Задайте через автозагрузку запуск следующего сценария, который будет сохранять снимки экрана с заданной периодичностью.
Код: Выделить всё
#!/bin/bash
path="" # Путь для сохранения снимков
time=5 # Время между снимками
cd "$path"
for ((;;))
do
sufix=`date +%Y-%m-%d_%H-%M-%S`
dir=`date +%Y-%m-%d`
if ! [ -d "$dir" ]
then mkdir "$dir"
fi
scrot -p - | convert - png8:$dir/screen_$sufix.png
sleep $time
done
В таком виде за рабочий день будет набегать 2-3 сотни мегабайт.
Последний раз редактировалось пользователем 2 demonlibra; всего редактировалось раз: 26
Basic (ZXSpectrum)→Ms-Dos→W95→W98→Me→XP→W7→Ubuntu 15.10→Xubuntu 16.04→Linux Mint 18.2-21.1
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
-
- Сообщения: 844
- Зарегистрирован: 12 авг 2017, 09:09
- Решено: 13
- Откуда: Ростов-на-Дону
- Благодарил (а): 29 раз
- Поблагодарили: 204 раза
- Контактная информация:
Запись видео с экрана (скринкаст) как средство фиксирования
Если идти по пути записи видео, я бы в первую очередь ограничил количество кадров и разрешение.
Basic (ZXSpectrum)→Ms-Dos→W95→W98→Me→XP→W7→Ubuntu 15.10→Xubuntu 16.04→Linux Mint 18.2-21.1
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
Контекстное меню Nemo
Сценарий вывода данных оценки ресурса диска SSD
-
Автор темы - Сообщения: 178
- Зарегистрирован: 22 ноя 2019, 19:12
- Благодарил (а): 98 раз
- Поблагодарили: 9 раз
- Контактная информация:
Запись видео с экрана (скринкаст) как средство фиксирования
Запись ведется, нужно фиксировать происходящее на экране.
Нашел подходящий скрипт захвата:
ffmpeg -f x11grab -r 5 -s 1920x1080 -i :0.0 -vcodec mpeg4 screencast.avi
Он создает screencast.avi и записывает в него видео каждый день. Нужно хранить видео за три дня. Как мне создавать/переиминовывать screencast.avi текущей датой? Или хотя бы по порядку 1.avi, 2.avi.. чтобы вновь созданный screencast.avi не перезаписывал запись за предыдущий день?
-
- Сообщения: 10050
- Зарегистрирован: 27 июн 2017, 13:36
- Решено: 129
- Откуда: Нижний Тагил
- Благодарил (а): 776 раз
- Поблагодарили: 1958 раз
- Контактная информация:
Запись видео с экрана (скринкаст) как средство фиксирования
Пример как узнать есть ли файл и изменить ему имя
Вариант когда можно сразу задавать дату в имени файла
Код: Выделить всё
if [ -e /путь/до/файла ]
then
mv /путь/до/файла /путь/до/нового/места/хранения
fi
Код: Выделить всё
ffmpeg -f x11grab -r 5 -s 1920x1080 -i :0.0 -vcodec mpeg4 screencast_$(date +"%d_%m_%Y").avi
-
Автор темы - Сообщения: 178
- Зарегистрирован: 22 ноя 2019, 19:12
- Благодарил (а): 98 раз
- Поблагодарили: 9 раз
- Контактная информация:
Запись видео с экрана (скринкаст) как средство фиксирования
О боги, rogoznik, спасибо!!! На работе завал - безостановочное плановое внедрение. Толком ничего не работает, нервничаю, добавляют всё новое и новое. А тут ты выдал готовый ответ и одной проблемой стало меньше.rogoznik писал(а): ↑21 сен 2022, 18:00Вариант когда можно сразу задавать дату в имени файлаКод: Выделить всё
ffmpeg -f x11grab -r 5 -s 1920x1080 -i :0.0 -vcodec mpeg4 screencast_$(date +"%d_%m_%Y").avi
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость