Gibt es ein Befehlszeilentool, mit dem Sie Ihren Computerbildschirm und Ihr Audiogerät aufzeichnen und in einer Datei speichern können?
Gibt es ein Befehlszeilentool, mit dem Sie Ihren Computerbildschirm und Ihr Audiogerät aufzeichnen und in einer Datei speichern können?
Antworten:
Mac OS X bietet die Möglichkeit, statische Screenshots über die Befehlszeile mit einem Dienstprogramm aufzunehmen, das einfallslos aufgerufen wird screencapture
. Weitere Informationen finden Sie unter Ausführen man screencapture
.
z.B. screencapture ~/Desktop/picture.png
Wenn Sie Mac OS X 10.6 oder höher verwenden, können Sie dies über AppleScript mit QuickTime Player X über AppleScript aufnehmen. (Es ist jedoch definitiv nicht "still" und wird nur ausgeführt, wenn jemand angemeldet ist.)
(Aufzeichnung des Bildschirms für 5 Sekunden, nur ein möglicher Ausgangspunkt)
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
Ich verwende SOX und VLC für die Erfassung, Crontab für die Planung, XLD für die Erstellung von m4a und MP4Box für das Multiplexing. Es ist ziemlich flexibel, erfordert aber Kenntnisse in Bash-Skripten (vielleicht auch in Apple-Skripten). Ich habe meine Inspiration in Diego Massantis mkmp4-Skript gefunden.
Kernprozesse zu starten:
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
Aufnahme planen:
crontab -l
0 8 * * 1-5 ~/capture.sh 3 0 recording-name 1
Sie können sich ein Bild davon machen, was das Skript tut: 3-Stunden-Aufnahme, Mono-Sound, jeden Arbeitstag um 8 Uhr morgens
Ich habe SOX für MPEG-Audiostreams weder aktiviert noch kompiliert und daher FLAC verwendet, um Platz zu sparen. Ich verwende XLD, um es in AAC-HE 16 kbps zu konvertieren, was für Sprache ausreicht.
Nächster Schritt: Multiplexen von Audio und Video zum Erstellen von MP4. Wenn es Ihnen nichts ausmacht, die grafische Benutzeroberfläche zu verwenden, ist MPEG StreamClip (oder QuickTime) ebenfalls eine gute Wahl.
MP4Box -add $1.m4a -sbr -add $1.m4v -fps $2.0 -inter 500 $1.mp4
Ich benutze dies täglich, um ein Archiv von GoToWebinar zu erstellen, aber wenn die nächste Version von FFmpeg den G2M4-Codec unterstützt, werde ich mich nicht mehr darum kümmern. Ja, es gibt auch OSAscript zum Starten des Webinars, bei dem auch das Flag com.apple.quarantine entfernt werden musste, um die Warnung zu deaktivieren (Möchten Sie es wirklich öffnen?).
Links:
http://blog.massanti.com/2008/09/26/mkmp4-automated-h264-aacplus-encoder-script-mac-linux/
Sie können die Software ffmpeg verwenden. Befolgen Sie die Anweisungen hier, um es auf einem Mac zu installieren . Verwenden Sie dann den Befehl:
$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
Für die Bildschirmaufnahme gibt es mehrere Open Source-Tools. Sie sollten "Screen Capture" mit einem Paketmanager unter Linux suchen. Tools wie scrot
können in einem Skript aufgerufen werden. Wenn Sie dies programmgesteuert planen, gibt es in Imlib2 die erforderlichen Einstiegspunkte.
Das Aufnehmen von Ton ist wirklich eine Aufnahme für ein Mikrofon-Audiogerät. Es ist nicht wirklich ein Schnappschuss und Sie sollten festlegen, wie lange die Aufnahme dauern soll. Jeder Soundrekorder reicht aus.
Es gibt auch Tools, mit denen Sie ein Video von Ihrem Desktop erstellen können.
Das Speichern des Inhalts des Linux-Framebuffer-Geräts in einer Datei ähnelt möglicherweise dem, wonach Sie suchen. Im Folgenden habe ich den relevanten Teil des Linux 2.2 Framebuffer Device Programming Tutorial zitiert . Sie müssen Ihr System so konfigurieren, dass das Framebuffer-Gerät aktiviert wird (überprüfen Sie, ob Sie / dev / fb0 auf Ihrem System haben). Ich habe es nicht auf meinem Ubuntu 9.04.
Wenn Sie hochauflösende Textmodi haben, können Sie mit dem Experimentieren beginnen. Sie haben ein Gerät / dev / fb0, das Sie wie jede normale Datei betrachten können. Um einen Screenshot zu machen, müssen Sie nur noch etwas tun
cat / dev / fb0> ~ / sshot
Und Sie haben eine ziemlich große Datei mit dem Inhalt des Speichers Ihrer Grafikkarte. Wenn Sie nun den Bildschirm löschen und eingeben
cat ~ / sshot> / dev / fb0
Sie sollten ein Display haben, das genau so aussieht wie zuvor. Natürlich wird die Sekunde, in der Sie mit der Eingabe der Anzeige beginnen, wieder normal.
Sie können den Import von ImageMagick verwenden, aber es ist nur Linux. Dann könnten Sie zu einem Terminal gehen und ausführen:
import screenshot.png
Ich verwende Snow Leopard auch auf einem alternden Macbook. Da ich versuche, Ziel C zu lernen, verbringe ich einige Zeit damit, ein Tool zu erstellen, mit dem bestimmte Fenster erfasst werden können.
https://github.com/vorgos/QuickGrab
Es ist ein Befehlszeilenprogramm, das das oberste aktivste Fenster oder ein von Ihnen angegebenes Fenster erfasst.
Hoffe das hat geholfen.