是否有一个命令行工具可以记录您的计算机屏幕和音频设备,然后将其保存到文件?
是否有一个命令行工具可以记录您的计算机屏幕和音频设备,然后将其保存到文件?
Answers:
Mac OS X提供了使用名为unimaginative的实用程序从命令行捕获静态屏幕截图的功能screencapture
。您可以通过运行找到更多信息man screencapture
。
例如。 screencapture ~/Desktop/picture.png
至于录制动作和计算机音频,如果您使用的是Mac OS X 10.6或更高版本,可以使用QuickScript Player X通过AppleScript执行此操作。(但它绝对不是“沉默”,只会在有人登录时运行)
(记录屏幕5秒,只是一个可能的起点)
tell application "QuickTime Player"
--activate
new screen recording
start document 1
delay 5
stop document 1
save document 1 in file "/tmp/test.mov"
quit
end tell
我使用SOX和VLC进行捕获,使用crontab进行调度,使用XLD创建m4a和MP4Box进行多路复用。它非常灵活,但需要了解Bash脚本(也许还有Apple脚本)我在Diego Massanti的mkmp4脚本中找到了我的灵感。
启动核心流程:
rec -q -c $C -r 48000 -b 16 $AFILE trim 0 $HH:$MM:00 &
VLC -I dummy screen:// --screen-fps=25 --quiet --sout "#transcode{vcodec=h264,vb=3072}:standard{access=file,mux=mp4,dst=$FILE}" --run-time $TIME vlc://quit
调度记录:
crontab -l
0 8 * * 1-5 ~/capture.sh 3 0 recording-name 1
你可以知道剧本正在做什么:记录3小时捕捉,单声道声音,每个工作日上午8点
我没有找到也没有为MPEG音频流编译SOX,因此使用FLAC来节省一些空间; 我正在使用XLD将其转换为AAC-HE 16kbps,这足以满足语音需求。
下一步:多路复用音频和视频以创建mp4。如果你不介意使用GUI,那么MPEG StreamClip(或QuickTime)也很好用。
MP4Box -add $1.m4a -sbr -add $1.m4v -fps $2.0 -inter 500 $1.mp4
我每天都在使用这个来创建GoToWebinar的存档,但是当FFmpeg的下一个版本支持G2M4编解码器时,我不会再打扰了。是的,还有OSAscript发布网络研讨会,还需要摆脱com.apple.quarantine标志以禁用警告(你确定要打开它吗?)。
链接:
http://blog.massanti.com/2008/09/26/mkmp4-automated-h264-aacplus-encoder-script-mac-linux/
将Linux帧缓冲设备的内容转储到文件可能与您要查找的内容类似。下面,我引用了Linux 2.2 Framebuffer设备编程教程的相关部分,看看。您需要配置系统以启用帧缓冲设备(检查系统上是否有/ dev / fb0),我的Ubuntu 9.04上没有它。
当你有高分辨率的文本模式,那么你可以开始尝试。您将拥有一个设备/ dev / fb0,您可以像任何普通文件一样查看它。要截取屏幕截图,您所要做的就是
cat / dev / fb0>〜/ sshot
你将拥有一个非常大的文件,里面有你的显卡内存。现在,如果清除屏幕,则键入
猫〜/ sshot> / dev / fb0
你应该有一个看起来和以前完全一样的显示器。当然,您开始键入显示的secon d恢复正常。
你可以使用ImageMagick的导入,但它只是Linux。然后你可以去一个终端并执行:
import screenshot.png
我也在老化的macbook上运行Snow Leopard,因为我正在尝试学习Objective C,所以我花了一些时间来构建一个可以捕获特定窗口的工具。
https://github.com/vorgos/QuickGrab
它是一个命令行工具,可以捕获最活跃的窗口或您指定的任何窗口。
希望有所帮助。