В операционной системе macOS есть большое количество встроенных программ. Причем некоторые из них имеют гораздо больше возможностей, чем кажется на первый взгляд. В этом материале мы расскажем о двух стандартных приложениях macOS, позволяющих записывать видео с экрана на Mac.
♥ ПО ТЕМЕ: Как переключать язык на клавиатуре Macbook, iMac, Mac Pro или Mac Mini — 3 способа.
Как записать видео с экрана Mac при помощи QuickTime Player
Функция записи экрана в видеоплеере QuickTime Player появилась на Mac еще c выходом OS X Lion Apple.
Записать видео с экрана Mac при помощи QTP довольно просто, для этого:
1. Откройте приложение QuickTime Player. Программа находится по пути Finder → Программы, также легко открывается через Launchpad (в папке Другие) или поиск Spotlight.
2. Для начала записи можно использовать сочетание клавиш ⌘Cmd + Control + N или же просто выбрать соответствующий пункт в панели меню.
3. Сразу после активации записи Вы увидите черное окошко, в котором можно настроить некоторые опции.
Здесь Вы можете выбрать микрофон для записи пояснений к Вашему видео, а также включить отображение нажатий мыши на видео.
4. При включении опции отображения нажатий мыши, во время записи при нажатии на какой-либо объект на экране, вокруг указателя будет отображаться черный кружок.
5. После нажатия на кнопку записи Вы сможете выбрать: записать изображение со всего экрана или отметить определенную область.
6. По окончании записи нажмите на кнопку «стоп» на панели меню.
7. Для того чтобы поделиться видео, нажмите кнопку Поделиться, которая появится при наведении курсора на окно. Опция позволяет загрузить видео на YouTube, отправить по электронной почте, AirDrop и т.д.
8. Для того чтобы сохранить видео на компьютер, перейдите в меню Файл и выберите Сохранить. Можно также воспользоваться сочетанием клавиш ⌘Cmd + S.
9. Для изменения разрешения (качества) видео при сохранении, перейдите в меню Файл и выберите Экспортировать как.
♥ ПО ТЕМЕ: Стопки в macOS, или как упорядочить файлы на рабочем столе в аккуратные группы.
Нажмите Shift + Cmd + 5
Начиная с MacOS Mojave, на Mac есть встроенный ярлык, который позволяет начать запись экрана.
Нажмите Shift + Cmd + 5, и вы получите экранное меню с различными вариантами записи. Они позволяют вам выбрать, записывать ли вы весь экран, только часть экрана, или снимать неподвижное изображение всего экрана, окна или части экрана.
Вы также увидите пунктирную рамку, указывающую, что будет захвачено, если вам просто нужно изображение, и вы можете уменьшить или увеличить его по мере необходимости. Нажмите Esc, чтобы отменить запись до ее начала.
Как выбрать место сохранения по умолчанию для записей экрана в macOS Mojave и новее
Несмотря на то, что для записей после их создания вы можете выбрать любое место на диске компьютера, новый инструмент позволяет сделать выбор по умолчанию.
1. Откройте программу Снимок экрана любым из способов указанных выше, например, при помощи сочетания клавиш ⌘Cmd + ⇧Shift + 5.
2. Нажмите «Параметры».
3. Выберите «Рабочий стол», «Документы», «Буфер обмена», «Почта», «Сообщения» и т.д., чтобы установить местоположение сохранения.
Movavi Screen Recorder
Это продвинутый инструмент для захвата видео. С его помощью можно эффективно записывать, обрабатывать и редактировать любые обучающие материалы, игровые видео или видеотрансляции.
Программа предлагает все необходимые функции, которые позволяют удобно записывать видеоклипы (с частотой до 60 кадров в секунду) с изображением нашего рабочего стола. Можно захватывать изображения различных размеров (даже любых пользовательских) вместе с аудиодорожкой. В программе есть много интересных опций, которые в том числе позволяют скрывать курсор или помечать щелчки. Кроме того, мы также можем делать скриншоты.
Используя Movavi Screen Recorder, мы можем редактировать ранее записанные видео. Пользователь имеет в своем распоряжении встроенный редактор, который позволяет обрезать видео и ненужные элементы, добавлять текст, графические эффекты в проект, а также анимации перехода для более сложных клипов.
Записанный и должным образом обработанный видео материал будет доступен в самой программе или сохранен на диске в форматах AVI, H.264 AVC, WMV, MPEG-2/4 и других, совместимых с iPod, iPhone, iPad и DVD-плеерами. Movavi Screen Recorder была оптимизирована для работы на процессорах Intel Core с технологией Intel HD Graphics.
Пробная версия позволяет пользоваться программой только в течение 7 дней. Также ограничивается длительность записи видео: не более 120 секунд, а также применён водяной знак на выходных файлах.
Как показать курсор мыши на скриншотах (для macOS Mojave и новее)
1. Откройте программу Снимок экрана любым из способов указанных выше.
2. Нажмите «Параметры».
3. Нажмите «Показать курсор мыши».
При включении опции отображения указателя мыши, во время записи видео с экрана при клике по какому-либо объекту на экране, вокруг указателя будет отображаться черный кружок.
♥ ПО ТЕМЕ: Как пользоваться приложением Фото на Mac (macOS): как накладывать фильтры и редактировать изображения.
Инструменты: ffmpeg + x11grab + Xvfb
В MacPorts в ffmpeg модуль x11grab в принципе отсутствует. Собрать его целиком из исходников с первого раза не вышло, потому я решился пропатчить файл порта для ffmpeg-devel: /opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/multimedia/ffmpeg-devel/Portfile Туда в конфигурацию nonfree я добавил строки —enable-x11grab и —enable-shared, для активации x11grab. Забегая наперед скажу, что в этом методе нашелся изъян, потому я не выкладываю Portfile с правками, а описываю его тут только для ознакомления. Когда X программа отображается в сессии (дисплее) :0.0 по-умолчанию, запись видео дает небольшую частоту кадров, в основном из-за размера экрана (2560×1440 у iMac), а скорее всего еще и из-за отрисовки графики, потому я решил перенаправлять программы в виртуальный дисплей с небольшим разрешением. Это делается через проект Xvfb, который без проблем установился из портов.
Запускается он довольно просто через терминал (размер с запасом): Xvfb :1 -screen 0 1024x800x15 -shmem Так же просто подключается к этому виртуальному дисплею ffmpeg: ffmpeg -r 30 -s 1024×768 -f x11grab -i :1.0+0,20 -vcodec qtrle target.mov На этом этапе меня ждала ошибка с переполнением Shared Memory, которая зачем-то в OS X установлена в неприличное значение в 4mb. Временное увеличение ее размера описывается и в рекомендациях Apple для серверов, и в других источниках: sudo sysctl -w kern.sysv.shmmax=67108864 sudo sysctl -w kern.sysv.shmall=67108864
Запись сессии VirtualBox
Следующим этапом я решил вывести через X сервер что-то полезное. Первой мыслью было собрать X-версию VirtualBox, а уже там в виртуальной машине показывать буквально что-угодно, но VirtualBox для маков давно уже мигрировал на Cocoa, потому это был тупик. Второй здравой мыслью было подключиться по RDP к виртуальной машине и записывать сессию rdesktop, благо он работает именно под X. Активация RDP под VirtualBox довольно простая, но требует установки Extension Pack с официального сайта. Подключение rdesktop с выводом через экран :0.1 DISPLAY=:1.0 rdesktop -xl localhost После этих действий ffmpeg начинает довольно успешно писать видео в .mov файл. В моем случае это был удачно подвернувшийся под руку Android x86:
К сожалению, видео получается довольно дерганное, сказывается сжатие rdp, потому анимацию так снимать не очень хорошо. Следующим шагом я решил перейти от RDP к VNC. В VirtualBox встроили VNC сервер, но не в публичные билды, а в собранные из портов или исходников. Никаких манипуляций с портами делать не пришлось, после сборки порта virtualbox я получил версию 4.1.14, с которой вполне можно работать.
Неприятным моментом оказалось лишь то, что VNC не доступен через интерфейс, а только при запуске в headless режиме: VBoxHeadless -startvm ‘Android x86’ -v on —vnc Управлять таким режимом приходится либо через второй сеанс VNC, либо снова через RDP, что не очень удобно, но в целом терпимо. Для захвата VNC потока использовался vncviewer, перенаправленный на виртуальный X дисплей: vncviewer localhost -ViewOnly -display :1.0 -PreferredEncoding raw -FullColor Результатом всех этих изысков стало 5-минутное видео c честными 30 fps в разрешении 1024х768:
(заранее извиняюсь за качество контента, я все-таки не профессиональный игрок) Если присмотреться, то временами заметны паузы на несколько секунд. К сожалению, эту проблему так и не получилось победить, да и сам подход вышел довольно громоздким. Для простейшей демонстрации игры в Android этого в общем достаточно, потому я переключился на следующую задачу — съемку видео симулятора iPhone.
Захват VNC для всего экрана
В OS X встроен удаленный доступ, который работает одновременно под двум протоколам — ARD и VNC. До выхода Lion 10.7 можно было включить Screen Sharing в системных настройках и подключиться к текущей сессии любым VNC клиентом. Начиная с 10.7 начались серьезные изменения: были выброшены все типы сжатия, кроме ZRLE, подключиться могут далеко не все клиенты, да и после подключения мы видим серый экран входа в систему, а уже лишь после ввода пароля пользователя подключаемся к сессии. Это отлично для администраторов, но для моей задачи наоборот создавало только препятствия. Программа vncviewer (он же RealVNC) в последних версиях уже умеет подключаться к OS X, но не умеет вводить пароль пользователя, потому этот путь тоже оказался тупиковым.
В качестве альтернативы я взял бесплатный VNC сервер от TestPlant (от же osxvnc и он же Vine). Версия 3.0 с sourceforge устарела, потому надо собирать новую из исходников или брать с сайта TestPlant. Несущественный баг этого сервера в том, что изредка клиент отпадает с ошибкой «unknown message type 131». Лечится перезапуском сервера. С уже налаженной связкой ffmpeg+x11grab+Xvfb и vncviewer получилось снять полноэкранное видео текущей сессии OS X, где был запущен симулятор iPhone:
Размер виртуального буфера я выбрал заведомо меньше разрешения экрана, чтобы снимать верхний левый угол. Результат вышел вполне достойным, но к сожалению, с низким FPS — анимация в игре откровенно тормозила. Более того, паузы, которые были довольно редкими при схемке из VirtualBox стали гораздо более выраженными. На этом этапе я провел несколько экспериментов, пересобирал VNC сервер и клиент из исходников, ставил минимальное разрешение экрана, но так и не добился хорошего результата. Уже через несколько часов стало понятно, что сам сервер отдает кадры с некоторой задержкой. После копания в коде выяснилось, что сервер намеренно делает паузу между обновлениями экрана: /* OK, now, to save bandwidth, wait a little while for more updates to come along. */ /* REDSTONE — Lets send it right away if no rfbDeferUpdateTime */ if (rfbDeferUpdateTime > 0 && !cl->immediateUpdate && !cl->needNewScreenSize) { pthread_mutex_unlock(&cl->updateMutex); usleep(rfbDeferUpdateTime * 1000); pthread_mutex_lock(&cl->updateMutex); } Оказалось, что переменная rfbDeferUpdateTime имеет начально значение 40 мс, но она вполне управляема и задается через коммандную строку. В самом Vine Server для этого есть отдельное поле:
Я поставил значение с запасом в 15, что дает максимальную частоту кадров в 66 fps. После этого прекратились лаги, но так и остались заметные паузы в видео. Теоретически, из такого видеоряда их можно повырезать и собрать что-то приемлемое, но хотелось более универсальное решение.
QuickCast
Если вам не нужен сверхмощный экранный рекордер на мак, а нужно только что-то для записи коротких, от трех до пяти минут экранных записей – вы можете воспользоваться QuickCast.
Он также может использовать ваш внешний микрофон и веб-камеру. Это приложение, которое после установки будет находиться в строке меню. Когда оно будет вам необходимо, просто нажмите на его значек. Запись делается со звуком.
Мы не могли не упомянуть эту программу, одна по опыту использования – не советуем ее. Так как есть намного более удобные способы.
Туз в рукаве: vnc2flv
Теперь у меня был видеопоток в формате vnc отличного качества, оставалось только записать его в файл. Я снова подавил исконно программистское желание написать собственный дампер и нашел в недрах интернета проект vnc2swf, а затем и его наследника vnc2flv. Скептическое отношение к грабберу на Питоне прошло сразу же после первых результатов — программа записывает видеопоток в lossless качестве и разрешении WQHD с 15+ fps! Запускаю я ее без извратов с Xvfb, напрямую подключая к VNC серверу: flvrec.py -r 30 127.0.0.1 Для повышения fps достаточно уменьшить разрешение до 1280×720. Что интересно, при этом можно перезапустить Vine VNC, он подхватит текущее разрешение экрана, а затем можно спокойно переключиться на родное разрешение и включать запись. Установка vnc2flv очень проста и описана на сайте, особых подводных камней тут нет. Готовое видео можно обработать в любимом видео-редакторе, обрезать лишнее и сконвертировать в нужный формат. Я пользуюсь VirtualDub, запущенным под wine, но это уже дело привычки.
Вот результат всей этой эпопеи:
Видео достаточно четкое, без рывков и лагов. Анимация записана нормально. Как по мне, вполне можно использовать для записи буквально чего-угодно с экрана Mac OS. Не хватает буквально только курсора, но это можно и так пережить.
OBS (Open Broadcaster Software)
OBS для Mac OS – это бесплатное программное обеспечение для записи экрана, которое поставляется с кучей удивительных функций. Но изюминкой их всех является возможность иметь несколько экземпляров записей, работающих независимо друг от друга. Затем вы можете присоединиться к ним позже, чтобы сформировать полную запись. Проще говоря, вы можете записывать действия в игре, веб-браузере, текстовом редакторе, медиаплеере и других источниках видео одновременно.
Кроме того, это приложение позволяет настроить горячие клавиши, которые помогут вам переключаться между различными сценами и выполнять другие задачи, такие как запуск/остановка записей, приглушение звука и многие другие. И это еще не все. Multiple-view позволяет отслеживать восемь различных сцен и переходить к любой из них, нажав на нее.
После установки приложение дает вам всплывающее окно автоматической настройки. В нем оно спрашивая как вы хотите его настроить. Он в основном предназначен для потоковой передачи видео, но и для записи экрана подойдет более чем отлично.
Аудиомикшер также не испытывает недостатка в возможностях настройки и оснащен фильтрами для каждого источника, такими как шумоподавление и шумоподавление. Вы также можете взять на себя больший контроль над звуком с помощью плагина VST. Пользовательский интерфейс OBS совсем не сложен, но вы все равно можете использовать модульную док-станцию, чтобы изменить макет так, чтобы он вам подходил.
Плюсы:
- Высококачественная потоковая передача и запись.
- Неограниченная длина видео.
- Несколько экземпляров видеозаписи.
- VST совместимый.
- Запись со звуком.
Недостатки:
- Настройка занимает много времени.
OBS бесплатный, с открытым исходным кодом и очень глубокой возможность к настройкам. Однако изначально трудно разобраться во всех его настройках. Если вы не гик, не стоит тратить свое время – переходите к другой программе.
Screencast O Matic
Screencast-O-Matic можно использовать бесплатно, но в ней также предлагается платная версия за 15$ в год. Цена довольно разумна, исходя из ее функционала. Бесплатная версия позволяет записывать до пятнадцати минут. Так же делает запись экрана и веб-камеры. Позволяет публиковать на YouTube и сохраняет ваши записи в виде видеофайлов.
Quick Time Player
Это, собственно говоря, и есть тот встроенный в систему способ для записи экрана на вашем маке. Как им пользоваться, а так же о его недостатках, достоинствах и кастомизации настроек мы рассказывали в этой статье. Можете ознакомиться более подробно.
По итогу – это хорошее средство захвата изображения на вашем экране. Подойдет большинству пользователей. Не имеет из ряда вон выходящих фишек, однако, прост в использовании.
Вы также можете использовать Quick Time для записи звука, выбрав «Новую функцию записи звука». Вы сможете записывать внутренние воспроизводимые звуки и звук либо с внутреннего, либо с внешнего микрофона.