Untuk mengambil screenshot statis dari bagian yang dipilih dari layar saya, saya sering menggunakan scrot
dengan -s shot.png
. Ini bagus untuk menambahkan ilustrasi ke posting StackExchange. Saya bahkan menemukan skrip ini untuk secara otomatis mengunggah tangkapan layar ke Imgur.com dan menaruh tautan di papan klip X saya!
Mari kita ubah ini menjadi dua belas : Bagaimana cara saya membuat screencast GIF?
Ada beberapa program seperti recordmydesktop
, byzanz
& co seperti yang dibahas pada Tanya Ubuntu yang bertujuan untuk menjadi "ramah pengguna", tetapi dalam pengalaman saya adalah buggy, tidak efisien, sebagian besar tidak dapat ditulis dan tidak cocok untuk hal-hal kecil seperti ini.
Saya hanya ingin memilih area dan merekam GIF, dengan perintah konsol yang dapat saya mengerti, bukan sesuatu yang misterius yang tidak dapat dituliskan dengan GUI.
Bagaimana saya bisa melakukan ini?
sumber
Jawaban:
Baiklah kalau begitu
Saya mulai
ffcast
, lakukanvim
, berhentiffcast
, laluconvert
edit.avi
→.gif
.Saya menjalankan perintah perekaman di terminal lain. Skrip yang dipoles untuk Anda
$PATH
di akhir jawaban ini.Apa yang terjadi?
Menangkap
ffcast
adalah produk luar biasa dari beberapa peretasan di komunitas Arch Linux (terutama lolilolicon ). Anda dapat menemukannya di github (atau di AUR for Arch ers). Daftar ketergantungannya adilbash
danffmpeg
, meskipun Anda inginxrectsel
( tautan AUR ) untuk pemilihan persegi panjang interaktif.Anda juga dapat menambahkan
ffmpeg
flag tepat setelah perintah. Saya mengatur-r 15
untuk menangkap pada 15 frame per detik dan-codec:v huffyuv
untuk perekaman lossless. (Mainkan dengan ini untuk men-tweak pengorbanan ukuran / kualitas.)GIFfing
ImageMagick dapat membaca
.avi
video dan memiliki beberapa trik optimasi GIF yang secara drastis mengurangi ukuran file sambil menjaga kualitas: The-layers Optimize
untukconvert
memanggil pengoptimal tujuan umum. Manual ImageMagick juga memiliki halaman tentang optimisasi tingkat lanjut .Naskah akhir
Inilah yang saya miliki di blog saya
$PATH
. Ini merekam ke dalam file sementara sebelum mengkonversi.Terima kasih kepada BenC untuk pekerjaan detektif dalam mencari tanda yang benar setelah
ffcast
pembaruan terbaru .Jika Anda ingin menginstal dependensi pada distro berbasis Debian, Louis telah menulis catatan instalasi yang bermanfaat .
sumber
ffcast
telah berubah: github.com/lolilolicon/FFcast/issues/8ffcast -s rec [filename]
, meskipun itu tidak memberikan pengaturan tepat yang Anda gunakan dalam contoh Anda. Sayangnya, untuk memberikan pengaturan yang tepat, Anda sekarang harus memberikan seluruhffmpeg
perintah. Panggilan Anda tentang cara terbaik untuk memperbarui jawaban ini :)ffcast -s % ffmpeg -f x11grab -show_region 1 -framerate 20 -video_size %s -i %D+%c -codec:v huffyuv -vf crop="iw-mod(iw\\,2):ih-mod(ih\\,2)" $TMP_AVI
sepertinya melakukan trik.Bagi saya, jawabannya adalah untuk menggunakan
ffcast
denganffmpeg
seperti:Saya kemudian biasa
ffmpeg
melakukan konversi dari avi ke gif - sangat cepat dan menjaga framerate tetap utuh:Terakhir saya menggunakan convert dalam cara yang sama seperti @anko 's jawaban untuk mengoptimalkan gif, tapi saya menetapkan batas pada penggunaan sumber daya untuk berhenti
convert
keluar dengankilled
pesan, dan saya dihapus penundaan sebagaiffmpeg
telah ditangani bahwa:sumber
Repositori ini membantu Anda membuat gif Anda dari wilayah pilihan dan juga mengoptimalkannya untuk Anda
https://github.com/devlifeX/record-screen-gif
sumber
untuk pengaturan saya (ubuntu 16.04), ffcast tidak berfungsi dengan baik karena tidak diperbarui di github untuk sementara waktu.
jadi saya memasang script menggunakan slop ( https://github.com/naelstrof/slop ) dan ffmpeg.
sebuah contoh:
sumber
Saya telah menulis skrip pembungkus interaktif untuk desktop unix untuk alasan ini, dan setelah satu tahun penggunaan, saya senang membagikannya di sana!
Dibuat dengan
byzanz
,gifsicle
,xdotool
, dan script ditulis dalamphp
.Contoh output:
[1020px, lebar gif tidak diubah ukuran 1020px, 70 detik, 50 warna, 65Kb ]
Ini memberikan gif terkompresi yang baik, dan merupakan karya yang bagus untuk pertanyaan ini.
Ini adalah basis yang cukup sederhana, siap untuk diretas oleh Anda.
Fungsi : Gif record pada posisi mouse atau layar penuh, mengubah ukuran, kompresi, kompresi warna, membalikkan / menggabungkan, unggahan ikal giphy.com.
Untuk memulai catatan gif 10 detik:
gif 10
Untuk merekam beberapa kali dengan parameter yang sama:
gif !
Untuk memulai catatan gif layar penuh 5 detik:
gif 5 --fullscreen
Script runnning, dengan senang hati merekam dirinya sendiri:
[ 45 detik, lebar 645px, penuh warna, 976kb ]
Skrip 5kb penuh:
Kemampuan membalikkan / menggabungkan, untuk membuat barang artistik.
Asli (435kb)
Terbalik, digabung: (826kb)
Untuk menginstal, menggunakan phi :
Layar penuh:
[1920 * 1080px, gif 400px, 50 detik , 100 warna, 2Mb ]
Sumber, dengan beberapa penjelasan lebih lanjut dan potensi pembaruan: https://github.com/webdev23/gif
sumber