Ситуация: безденежный провидец башни из слоновой кости и новичок в ffmpeg, прикованный к подержанному Macbook Pro 2010 года выпуска, скрывающему графический чип NVIDIA GeForce GT 330M «Черный экран смерти».
С помощью приложения gfxCardStatus (выбрана опция «Только интегрированные») я преодолел эту конкретную ошибку контроля качества Apple при записи полноэкранного видео и в полном разрешении, используя следующую команду:
ffmpeg -video_size 1680x1050 -framerate 30 -f avfoundation -i "1" -c:v libx264 -qp 0 -preset ultrafast -capture_cursor 1 -capture_mouse_clicks 1 capture.mkv
Однако параметры Capture_cursor и Capture_Mouse_Clicks упорно игнорируются.
Помимо этих упущений, ffmpeg записывает с качеством и плавностью лучше, чем любое из приложений для захвата экрана / скринкаста, которые я пробовал, поэтому на этот раз я почти уверен, что это не имеет ничего общего с дерьмовым оборудованием, а скорее с моим использованием из ffmpeg.
Нет ничего, что указывало бы на то, что процесс установки/компиляции пошел не так, как надо, для чего я использовал:
$ brew install ffmpeg --with-fdk-aac --with-ffplay --with-freetype --with-frei0r --with-libass --with-libvo-aacenc --with-libvorbis --with-libvpx --with-opencore-amr --with-openjpeg --with-opus --with-rtmpdump --with-schroedinger --with-speex --with-theora --with-tools --with-libavformat --with-OpenCV --with-libx264
Есть ли что-то, что я упускаю из виду, но что необходимо для работы Capture_cursor и Capture_Mouse_clicks? Параметр компиляции? порядок опций ffmpeg? Какая-то установка флага ОС?
Операционная система — OS X Yosemite — версия 10.10.5 (14F1021)
Аппаратное обеспечение:
Приложение
Здесь используется команда захвата видео ffmpeg в соответствии с рекомендациями @Mulvya:
$ ffmpeg -video_size 1680x1050 -framerate 30 -f avfoundation -capture_cursor 1 -capture_mouse_clicks 1 -i "1" -c:v libx264 -qp 0 -preset ultrafast capture.mkv
Поместите эти параметры перед -i "1"
В ffmpeg параметры и флаги применяются к следующей записи ввода/вывода.
Так,
ffmpeg {-flags for input1} -i input1 {-flags for input2} -i input2 {-flags for output1} output1 {-flags for output2} output2