コンピューターの画面とオーディオデバイスを記録してファイルに保存できるコマンドラインツールはありますか?
Mac OS Xは、想像を絶するscreencapture
と呼ばれるユーティリティを使用して、コマンドラインから静的なスクリーンショットをキャプチャする機能を提供します。 man screencapture
を実行すると、詳細情報を見つけることができます。
例えば。 screencapture ~/Desktop/picture.png
モーションとコンピュータオーディオの録音に関しては、Mac OS X 10.6以降を使用している場合は、QuickTime PlayerXを使用して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スクリプト))DiegoMassantiの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
スクリプトが何をしているのかを知ることができます:毎日午前8時に3時間のキャプチャ、モノラルサウンドを録音します
MPEGオーディオストリームに対応したSOXを見つけたりコンパイルしたりしなかったため、FLACを使用してスペースを節約しました。 XLDを使用してAAC-HE16kbpsに変換しています。これは音声には十分です。
次のステップ:オーディオとビデオを多重化して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/
あなたはソフトウェアffmpegを使うことができます。 Macにインストールするには、指示に従ってください ここ 。次に、次のコマンドを使用します。
$ffmpeg -f alsa -ac 2 -i hw:0,0 -f x11grab -r 30 -s $(xwininfo -root | grep 'geometry' | awk '{print $2;}') -i :0.0 -acodec pcm_s16le -vcodec libx264 -vpre lossless_ultrafast -threads 0 -y output.mkv
画面をキャプチャするために、いくつかのオープンソースツールがあります。 Linuxのパッケージマネージャーを使用して「スクリーンキャプチャ」を検索する必要があります。 scrot
のようなツールはスクリプトで呼び出すことができます。プログラムで実行する場合は、Imlib2に必要なエントリポイントがあります。
サウンドのキャプチャは、実際にはマイクサウンドデバイスの録音です。これは実際にはスナップショットではないため、録音を行う時間を管理する必要があります。どのサウンドレコーダーでもかまいません。
デスクトップのビデオを作成するツールもあります。
Linuxフレームバッファデバイスの内容をファイルにダンプすることは、探しているものと似ている可能性があります。以下に、 Linux 2.2フレームバッファデバイスプログラミングチュートリアル の関連部分を引用しました。ご覧ください。フレームバッファデバイスを有効にするようにシステムを構成する必要があります(システムに/ dev/fb0があるかどうかを確認してください)。Ubuntu9.04にはありません。
高解像度のテキストモードがある場合は、実験を開始できます。通常のファイルと同じように見ることができるデバイス/ dev/fb0があります。スクリーンショットを撮るには、あなたがしなければならないのは
cat/dev/fb0>〜/ sshot
また、グラフィックカードのメモリの内容を含むかなり大きなファイルが作成されます。ここで、画面をクリアして、
猫〜/ sshot>/dev/fb0
以前とまったく同じように見えるディスプレイが必要です。もちろん、入力を開始した2番目の画面は通常の状態に戻ります。
また、古くなったMacBookでSnow Leopardを実行していますが、Objective Cを学習しようとしているので、特定のウィンドウをキャプチャできるツールを構築するために時間を費やしています。
https://github.com/vorgos/QuickGrab
これは、最もアクティブなウィンドウまたは指定したウィンドウをキャプチャするコマンドラインツールです。
それがお役に立てば幸いです。
ImageMagickからimportを使用できますが、これはLinuxのみです。次に、ターミナルに移動して実行できます。
import screenshot.png