Pertanyaan Screen Capture - baris perintah?


Apakah ada alat baris perintah di luar sana yang dapat merekam layar komputer Anda dan perangkat audio dan kemudian menyimpannya ke file?


12
2017-07-17 18:35


asal


Ada alasan mengapa ini perlu menjadi alat CLI? Anda mendapatkan tangkapan layar gratis dengan QuickTime. - igorw
Saya ingin menyebutnya dalam skrip shell dan melakukannya tanpa pengawasan.
Hai Keith, selamat datang di StackOverlow. Ini tidak terlihat terkait pemrograman sekilas, meskipun sebenarnya bisa jadi jika Anda berencana untuk skrip dalam file batch atau sesuatu. Anda mungkin ingin membaginya agar tidak tertutup dari tangan. - Brian MacKay


Jawaban:


Mac OS X menawarkan kemampuan untuk menangkap screenshot statis dari baris perintah menggunakan utilitas yang disebut unimaginatively screencapture. Anda dapat menemukan informasi lebih lanjut dengan menjalankan man screencapture.

misalnya. screencapture ~/Desktop/picture.png


Sedangkan untuk merekam gerakan dan audio komputer Anda dapat melakukan ini melalui AppleScript menggunakan QuickTime Player X jika Anda menggunakan Mac OS X 10.6 atau yang lebih baru. (Namun itu jelas bukan "diam" dan hanya akan berjalan ketika seseorang masuk)

(Merekam layar selama 5 detik, hanya titik awal yang memungkinkan)

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

9
2017-07-18 06:29



screencapture hanya memungkinkan untuk melakukan pengambilan gambar diam, tidak ada rekaman video atau suara. - MacLemon
@MacLemon: Menambahkan beberapa klarifikasi. - Chealion
FYI, cukup mereferensikan posting blog yang telah meningkatkan versi ke Quicktime Applescript di atas: netjunki.org/blog/… - David
Blog @David yang disebutkan masih tersedia di cache Google, dan mencatat: "Tampaknya ketika Anda mencoba dan memanggil save in 10.7 quicktime hanya mengabaikan panggilan. Atau sesuatu seperti itu. Skrip akan menggantung di sana selamanya dan kemudian waktu habis." Ini berlaku untuk saya di 10.8 ... - ptim


Saya menggunakan SOX dan VLC untuk menangkap, crontab untuk penjadwalan, XLD untuk membuat m4a dan MP4Box untuk multiplexing. Ini cukup fleksibel, tetapi membutuhkan pengetahuan tentang Bash scripting (mungkin juga Apple script) saya menemukan inspirasi saya di skrip mkmp4 Diego Massanti.

proses inti untuk meluncurkan:

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

Rekaman penjadwalan:

crontab -l
0       8       *       *       1-5     ~/capture.sh 3 0 recording-name 1

Anda bisa mendapatkan ide apa yang dilakukan skrip: rekam pengambilan 3 jam, suara mono, setiap hari kerja jam 8 pagi


Saya tidak menemukan atau mengkompilasi SOX yang diaktifkan untuk streaming audio MPEG, maka menggunakan FLAC untuk menghemat ruang; Saya menggunakan XLD untuk mengubahnya menjadi AAC-HE 16kbps, yang cukup untuk suara.

Langkah selanjutnya: multipleks audio dan video untuk membuat mp4. Jika Anda tidak keberatan untuk menggunakan GUI, maka MPEG StreamClip (atau QuickTime) juga berfungsi dengan baik.

MP4Box -add $1.m4a -sbr -add $1.m4v -fps $2.0 -inter 500 $1.mp4

Saya menggunakan ini setiap hari untuk membuat arsip GoToWebinar, tetapi ketika rilis FFmpeg berikutnya mendukung codec G2M4, saya tidak akan repot-repot lagi. Ya, ada juga OSAscript untuk meluncurkan webinar yang juga mengharuskan Anda menyingkirkan flag com.apple.quarantine untuk menonaktifkan peringatan (Apakah Anda yakin ingin membukanya?).

tautan:

http://blog.massanti.com/2008/09/26/mkmp4-automated-h264-aacplus-encoder-script-mac-linux/


2
2017-09-22 16:20



Ini mungkin terkait juga untuk VLC, ada gurauan kecil tentang cara menggunakannya di posting blog ini: netjunki.org/blog/… - David


Anda dapat menggunakan perangkat lunak ffmpeg. Untuk menginstalnya di Mac, ikuti instruksi sini. Kemudian gunakan perintah:

$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

1
2017-10-25 08:34



Saya ragu bahwa akan bekerja pada OSX, alsa dan x11grab kemungkinan hanya tersedia di linux membangun ffmpeg. - Adam M-W


Untuk menangkap layar, ada beberapa alat Open Source. Anda harus mencari "screen capture" menggunakan manajer paket di Linux. Alat seperti scrot dapat dipanggil dalam skrip. Jika Anda berencana melakukannya secara terprogram, ada titik masuk yang diperlukan di Imlib2.

Menangkap suara benar-benar merekam untuk perangkat suara mikrofon. Ini bukan snapshot dan Anda harus mengatur berapa lama rekaman harus dilakukan. Semua perekam suara akan melakukannya.

Ada juga alat yang membuat video dari desktop Anda.


0
2017-07-17 21:12





Membuang isi perangkat framebuffer Linux ke file mungkin mirip dengan yang Anda cari. Di bawah ini, saya mengutip bagian yang relevan dari Linux 2.2 Tutorial Pemrograman Perangkat Framebuffer, Lihatlah. Anda perlu mengkonfigurasi sistem Anda untuk mengaktifkan perangkat framebuffer (periksa apakah Anda memiliki / dev / fb0 pada sistem Anda), saya tidak memilikinya pada Ubuntu 9.04 saya.

Saat Anda mendapatkan textmode resolusi tinggi,   maka Anda bisa mulai bereksperimen. Kamu   Anda akan memiliki perangkat / dev / fb0 yang Anda miliki   dapat melihat seperti file normal lainnya. Untuk   ambil screenshot, yang harus Anda lakukan   aku s

cat / dev / fb0> ~ / sshot

Dan Anda akan memiliki file yang cukup besar   dengan isi grafik Anda   kartu memori di dalamnya. Sekarang, jika kamu   bersihkan layar, dan ketik

cat ~ / sshot> / dev / fb0

Anda harus memiliki tampilan yang terlihat   persis seperti sebelumnya. Tentu saja, itu   Secon d Anda mulai mengetik layar   kembali menjadi normal.


0
2017-07-21 02:56





Kamu dapat memakai impor dari ImageMagick, tetapi hanya Linux. Kemudian Anda bisa pergi ke terminal dan mengeksekusi:

import screenshot.png

0
2017-07-25 03:44





Saya juga menjalankan Snow Leopard pada macbook yang sudah tua dan karena saya mencoba mempelajari Objective C, saya menghabiskan waktu untuk membuat alat yang dapat menangkap jendela tertentu.

https://github.com/vorgos/QuickGrab

Ini adalah alat baris perintah yang akan menangkap jendela paling aktif teratas atau jendela apa pun yang Anda tentukan.

Semoga itu membantu.


0
2017-07-03 12:36