තිර විකාශනයක සජීවීකරණය කළ GIF රූප නිර්මාණය කරන්නේ කෙසේද?


495

පිළිතුරු වැඩිදියුණු කිරීමේ ක්‍රමයක් ලෙස මෙම වෙබ් අඩවියේ කිහිප වතාවක් ප්‍රවර්ධනය කරන ලද තිර කාස්ට් වල සජීවීකරණ GIF රූප (පහත රූපයේ මෙන්) මම දැක ඇත්තෙමි.

සජීවිකරණ GIF රූපය

මේවා නිර්මාණය කිරීම සඳහා භාවිතා කරන මෙවලම් කට්ටලය කුමක්ද? මෙය ස්වයංක්‍රීයව කරන වැඩසටහනක් තිබේද, නැතහොත් මිනිසුන් තිර විකාශනය කරමින් ඒවා ස්ථිතික රාමු මාලාවක් බවට පරිවර්තනය කර GIF රූප නිර්මාණය කරනවාද?


6
LICEcap (http://www.cockos.com/licecap) පහත දැක්වෙන ඕනෑම විසඳුමකට වඩා සරල ය, මන්ද එය GUI මත පදනම් වූ බැවිනි. නිදහස හා මිල මෙන් එය නොමිලේ. එකම අවාසිය නම් ඔබ එය වයින් හරහා ධාවනය කළ යුතුය.
ඩෙනිස්

4
ආශ්‍රිත: GIF තිර විකාශනය; යුනික්ස් සහ ලිනක්ස් ස්ටැක් එක්ස්චේන්ජ් වෙතින් යුනික්ස් මාර්ගය .
ක්‍රිස්ටියන් කියුපිටු


2
මෙම උදාහරණය වින්ඩෝස් මත ලබාගත් තිර රුවක්ද?
ක්ලෙමන්ට්

@ ක්ලෙමන්ට් යනු මා දුටු පළමු දෙයයි :)
UniversallyUniqueID

Answers:


297

බලන්න

ඔබගේ තිරයෙන් GIF පහසුවෙන් පටිගත කිරීමට ඉඩ දෙන නව යෙදුමකි.

තිර විකාශන නිරූපණය බලන්න

කෙසේ වෙතත්, GIF සතුව ඉතා සීමිත වර්ණ මාලාවක් ඇති බව මතක තබා ගන්න, එබැවින් ඒවා භාවිතා කිරීම එතරම් හොඳ අදහසක් නොවේ.

උබුන්ටු 18.10 සිට ඔබට කෙලින්ම පීක් ස්ථාපනය කළ හැකිය.

sudo apt install peek

උබුන්ටු හි පැරණි සංස්කරණ සඳහා, ඔබට පීක් හි නවතම අනුවාදයන් එහි පීපීඒ වෙතින් ස්ථාපනය කළ හැකිය .

sudo add-apt-repository ppa:peek-developers/stable
sudo apt update
sudo apt install peek

GitHub repo හි වැඩි විස්තර සොයන්න .


2
ඔව් මේක නියමයි. එය X11 සමඟ පමණක් ක්‍රියාත්මක වන අතර එය ඉලක්ක කර ඇත්තේ GNOME 3
අජිත් ආර් නයාර්

2
EBeastWinterwolf සහ ExillustX: දෝෂ වාර්තා මෙහි පළ නොකරන්න, මිනිසුන් ඒවා දැකීමට සැබවින්ම සැලකිලිමත් වන ගැටළු ට්රැකර් භාවිතා කරන්න! එය මෙහි වාර්තා කරන්න: github.com/phw/peek/issues
oligofren

2
මෙය විශිෂ්ට මෙවලමකි.
මයික්

1
Op ජොප් වී. ඔබ වාර්තාවක් කළේ කෙසේද?
milkovsky

1
ilmilkovsky මම මෙය පටිගත කළේ නැහැ. එසේ පැවසීමෙන් පසු, ඔවුන් අතථ්‍ය යන්ත්‍රයක් භාවිතා කර එය පටිගත කර ඇතැයි මම සිතමි.
stommestack

276

බයිසන්ස්

GIF තිර විකාශනය පටිගත කිරීම සඳහා මා මෙතෙක් සොයාගත් හොඳම මෘදුකාංගය බයිසාන්ස් ය.

බයිසැන්ස් විශිෂ්ටයි, එය කෙලින්ම ජීඅයිඑෆ් වෙත පටිගත කරන නිසා, ගුණාත්මකභාවය සහ එෆ්පීඑස් සිත් ඇදගන්නා සුළු වන අතර ලිපිගොනු ප්‍රමාණය අවම මට්ටමක පවත්වා ගනී.

ස්ථාපනය

බයිසැන්ස් දැන් විශ්ව ගබඩාවෙන් ලබා ගත හැකිය:

sudo apt-get install byzanz

භාවිතය

එය ස්ථාපනය කළ විට ඔබට එය පර්යන්තයක ධාවනය කළ හැකිය.

මෙය මම දැන් කළ කුඩා උදාහරණයකි

byzanz-record --duration=15 --x=200 --y=300 --width=700 --height=400 out.gif

රූප විස්තරය මෙහි ඇතුළත් කරන්න


4
ස්තූතියි, හොඳ මෙවලමක්! වර්ණ සෑම විටම නිවැරදි නොවේ, නමුත් එය සුළු විස්තරයකි. මම කවුළුවක් අල්ලා ගැනීමට උපකාරී වන ෂෙල් ස්ක්‍රිප්ට් එකක් ලියා ඇත (පරිශීලකයා විසින් ධාවන වේලාවේදී තෝරාගෙන ඇත), පහත පිළිතුරක පළ කර ඇත .
රොබ් ඩබ්ලිව්

61
බයිසන්ට කිසිදු UI එකක් නැත! මට පටිගත කිරීමට අවශ්‍ය ප්‍රදේශයේ x, y, පළල සහ උස අනුමාන කළ යුතුද? ටිකක් හාස්‍යජනකයි 2014 දී මට තවමත් මෙය කිරීමට සිදුවීම.
ඩෑන් ඩස්කල්ස්කු

5
AnDanDascalescu ඔබ එය භාවිතා කළ යුතු යැයි කිසිවෙකු පවසන්නේ නැත ... මම GUI ට වඩා පර්යන්තයකට වැඩි කැමැත්තක් දක්වමි, එහි ඇති වරද කුමක්ද?
un නෝ පෙරෙයිරා

32
AnDanDascalescu අනුමාන කිරීමට අවශ්‍ය නැත. xwininfoකවුළු ගුණාංග ලබා ගැනීමට ඔබට භාවිතා කළ හැකිය.
මාකස් මුලර්

5
කල්තියා දැන ගැනීම වළක්වා ගැනීමට ක්‍රමයක් තිබේද? පටිගත කිරීමේදී කොපමණ කාලයක් ගතවේදැයි මම කල්තියා නොදනිමි.
නිකොලස් රාවුල්

236

පළමුව මෙය ස්ථාපනය කරන්න:

sudo apt-get install imagemagick mplayer gtk-recordmydesktop

ඒවා අවශ්‍ය දේවල්, ImageMagick, MPlayer සහ Desktop Recorder ය. ඉන්පසු තිරයේ / යෙදුමේ කොටසක් ග්‍රහණය කර ගැනීමට ඩෙස්ක්ටොප් රෙකෝඩරය භාවිතා කර තිර විකාශනය ලෙස භාවිතා කරන්න. ඩෙස්ක්ටොප් රෙකෝඩරය තුලට පටිගත ගැලවීම පසු OGV වීඩියෝ , MPlayer වැඩසටහන වන 'ප්රතිදානය' බහලුම තුලට ඉතිරි JPEG තිර අල්ලා ගැනීමට භාවිතා කරනු ඇත.

පර්යන්තයක:

mplayer -ao null <video file name> -vo jpeg:outdir=output

තිරපිටපත් සජීවීකරණය කළ gif බවට පරිවර්තනය කිරීමට ImageMagick භාවිතා කරන්න .

convert output/* output.gif

ඔබට මේ ආකාරයෙන් තිර දර්ශන ප්‍රශස්තිකරණය කළ හැකිය:

convert output.gif -fuzz 10% -layers Optimize optimised.gif

35
Gif ප්‍රශස්තිකරණය කළ හැකි තවත් ක්‍රමයක් නම් gifsicle භාවිතා කිරීමයි: gifsicle -O in.gif -o out.gifමම උත්සාහ කර ගොනු ප්‍රමාණයෙන් 100x අඩු කිරීමක් කළෙමි.
යොරෝගිග්

10
පුදුම වන අයට, @Yrogirg විධානයෙහි පළමු ධජය "O" ප්‍රාග්ධනයකි, ඉලක්කම් "0" නොවේ :)
brandizzi

2
ඇවැත්නි, gifsicle මගේ වේගවත් නමුත් කුඩා නොවූ අතර පරිවර්තන ප්‍රශස්තිකරණ විධානය නිසා එය අවලස්සන විය.
මැල්කම් ඕෂන්

6
අවසාන convertපියවර දෙක එකකට ඒකාබද්ධ කිරීමට මම නිර්දේශ කරමි : convert output/* -layers Optimize output.gif. මට නම්, මෙය සැකසුම් කාලය වේගවත් කළ අතර ප්‍රතිදාන ගොනුව කුඩා කළේය. එම පියවර වෙන වෙනම කිරීමට මට කිසිදු හේතුවක් නොපෙනේ. (මම -fuzz 10%තර්කය උත්සාහ කළේ නැත .)
thejoshwolfe

1
Al මැල්කම් ඕෂන් මෙන්, එම convertප්‍රකාශය එය පිළිකුල් සහගතය . ලේඛනයට අනුව ( imagemagick.org/script/command-line-options.php#layers ), කාලයත් සමඟ optimizeක්‍රියාත්මක කිරීම වෙනස් විය හැකිය. නමුත් ධජය convertසමඟ තරමක් වෙනස් කළ ප්‍රකාශයක් -coalesceදේවල් වැඩිදියුණු කළ නමුත් එය පිළිගත හැකි තැනට තවමත් පැමිණ නැත. -layers optimize-transparencyහොඳම convert 'output/*.jpg' -coalesce -layers optimize-transparency optimised.gif

140

byzanz

දළ විශ්ලේෂණය

මෙම පිළිතුර ෂෙල් ස්ක්‍රිප්ට් තුනක් අඩංගු වේ:

  1. byzanz-record-window - පටිගත කිරීම සඳහා කවුළුවක් තෝරා ගැනීමට.
  2. byzanz-record-region - පටිගත කිරීම සඳහා තිරයේ කොටසක් තෝරා ගැනීමට.
  3. 1 සඳහා සරල GUI ඉදිරිපස අන්තයක්.

හැදින්වීම

මාව හඳුන්වා දීම ගැන බbyzanz un නෝ පෙරෙයිරාට ස්තූතියි ! GIF සජීවිකරණ නිර්මාණය කිරීම සඳහා එය බෙහෙවින් ප්‍රයෝජනවත් වේ. සමහර අවස්ථාවල වර්ණ අක්‍රිය විය හැකි නමුත් ගොනු විශාලත්වය ඒ සඳහා ගැලපේ. උදාහරණය: තත්පර 40, 3.7Mb .

භාවිතය

පහත දැක්වෙන ස්ක්‍රිප්ට් දෙකෙන් එකක් / සියල්ලම ඔබගේ ෆෝල්ඩරයක සුරකින්න $PATH. නිශ්චිත කවුළුවක තිර විකාශනයක් කිරීමට පළමු ස්ක්‍රිප්ට් භාවිතා කිරීම පිළිබඳ උදාහරණයක් මෙන්න.

  1. දුවන්න byzanz-record-window 30 -c output.gif
  2. ඔබට අල්ලා ගැනීමට අවශ්‍ය කවුළුව වෙත යන්න (alt-tab). එය මත ක්ලික් කරන්න.
  3. $DELAYඔබ පටිගත කිරීම සඳහා සූදානම් වන තත්පර 10 ක් (තදින් කේත කර ඇති ) රැඳී සිටින්න .
  4. බීප් පසු ( beepශ්‍රිතය අර්ථ දක්වා ඇත ), byzanzආරම්භ වේ.
  5. තත්පර 30 කට පසු (එය පළමු 30පියවරේ තේරුමයි ), byzanzඅවසන් වේ. බීප් එකක් නැවත විකාශනය වේ.

මගේ ෂෙල් ස්ක්‍රිප්ටයේ ඕනෑම තර්කයක් තමාටම එකතු වන බව පෙන්වීමට මම -cධජය ඇතුළත් කළෙමි . මෙම ධජය කියයි ද screencast කර්සරය ඇතුළත් කිරීමට. බලන්න හෝ වැඩි විස්තර සඳහා.byzanz-record-windowbyzanz-record-cbyzanz
man byzanz-recordbyzanz-record --help

byzanz-record-window

#!/bin/bash

# Delay before starting
DELAY=10

# Sound notification to let one know when recording is about to start (and ends)
beep() {
    paplay /usr/share/sounds/KDE-Im-Irc-Event.ogg &
}

# Duration and output file
if [ $# -gt 0 ]; then
    D="--duration=$@"
else
    echo Default recording duration 10s to /tmp/recorded.gif
    D="--duration=10 /tmp/recorded.gif"
fi
XWININFO=$(xwininfo)
read X <<< $(awk -F: '/Absolute upper-left X/{print $2}' <<< "$XWININFO")
read Y <<< $(awk -F: '/Absolute upper-left Y/{print $2}' <<< "$XWININFO")
read W <<< $(awk -F: '/Width/{print $2}' <<< "$XWININFO")
read H <<< $(awk -F: '/Height/{print $2}' <<< "$XWININFO")

echo Delaying $DELAY seconds. After that, byzanz will start
for (( i=$DELAY; i>0; --i )) ; do
    echo $i
    sleep 1
done

beep
byzanz-record --verbose --delay=0 --x=$X --y=$Y --width=$W --height=$H $D
beep

byzanz-record-region

යැපීම: xrectselxrectsel වෙතින් . නිධිය ක්ලෝන කර ක්‍රියාත්මක කළ හැකි පරිදි ධාවනය කරන්න. (එය විරෝධය දැක්වුවහොත් කිසිදු Makefile, run සහ before ` run 'කරන්න).make./bootstrap./configure

#!/bin/bash

# Delay before starting
DELAY=10

# Sound notification to let one know when recording is about to start (and ends)
beep() {
    paplay /usr/share/sounds/KDE-Im-Irc-Event.ogg &
}

# Duration and output file
if [ $# -gt 0 ]; then
    D="--duration=$@"
else
    echo Default recording duration 10s to /tmp/recorded.gif
    D="--duration=10 /tmp/recorded.gif"
fi

# xrectsel from https://github.com/lolilolicon/xrectsel
ARGUMENTS=$(xrectsel "--x=%x --y=%y --width=%w --height=%h") || exit -1

echo Delaying $DELAY seconds. After that, byzanz will start
for (( i=$DELAY; i>0; --i )) ; do
    echo $i
    sleep 1
done
beep
byzanz-record --verbose --delay=0 ${ARGUMENTS} $D
beep

ගුයි අනුවාදය byzanz-record-window

සරල GUI සංවාදයක් සහිත ස්ක්‍රිප්ට්:

#!/bin/bash

# AUTHOR:   (c) Rob W 2012, modified by MHC (https://askubuntu.com/users/81372/mhc)
# NAME:     GIFRecord 0.1
# DESCRIPTION:  A script to record GIF screencasts.
# LICENSE:  GNU GPL v3 (http://www.gnu.org/licenses/gpl.html)
# DEPENDENCIES:   byzanz,gdialog,notify-send (install via sudo add-apt-repository ppa:fossfreedom/byzanz; sudo apt-get update && sudo apt-get install byzanz gdialog notify-osd)

# Time and date
TIME=$(date +"%Y-%m-%d_%H%M%S")

# Delay before starting
DELAY=10

# Standard screencast folder
FOLDER="$HOME/Pictures"

# Default recording duration
DEFDUR=10

# Sound notification to let one know when recording is about to start (and ends)
beep() {
    paplay /usr/share/sounds/freedesktop/stereo/message-new-instant.oga &
}

# Custom recording duration as set by user
USERDUR=$(gdialog --title "Duration?" --inputbox "Please enter the screencast duration in seconds" 200 100 2>&1)

# Duration and output file
if [ $USERDUR -gt 0 ]; then
    D=$USERDUR
else
    D=$DEFDUR
fi

# Window geometry
XWININFO=$(xwininfo)
read X < <(awk -F: '/Absolute upper-left X/{print $2}' <<< "$XWININFO")
read Y < <(awk -F: '/Absolute upper-left Y/{print $2}' <<< "$XWININFO")
read W < <(awk -F: '/Width/{print $2}' <<< "$XWININFO")
read H < <(awk -F: '/Height/{print $2}' <<< "$XWININFO")

# Notify the user of recording time and delay
notify-send "GIFRecorder" "Recording duration set to $D seconds. Recording will start in $DELAY seconds."

#Actual recording
sleep $DELAY
beep
byzanz-record -c --verbose --delay=0 --duration=$D --x=$X --y=$Y --width=$W --height=$H "$FOLDER/GIFrecord_$TIME.gif"
beep

# Notify the user of end of recording.
notify-send "GIFRecorder" "Screencast saved to $FOLDER/GIFrecord_$TIME.gif"

මෙයද බලන්න:


18
මෙම ස්ක්‍රිප්ට් ගිතුබ් වැනි තැනක තබා තිබේද? ඒවා සුපිරි ප්‍රයෝජනවත් ය, ඒවා ස්ටැක් ඕවර්ෆ්ලෝ පිළිතුරේ පෙළට වඩා හොඳ තැනක තබා ඇත්නම් හොඳයි.
KFro

2
FKFro මෙය උබුන්ටු අසන්න, SO නොවේ;) නැත, මම ඒවා git ගබඩාවකට දමා නැත, මන්ද ස්ක්‍රිප්ට් නරක ලෙස ලේඛනගත කර ඇති නිසා (පරිශීලකයින් සඳහා). මේ සමඟ ඇති ලියකියවිලි පිළිතුර සමඟ ඇතුළත් කර ඇති බැවින් Git ගබඩාවක ලිපිගොනු සහ ලියකියවිලි බෙදීමෙන් කිසිදු ප්‍රයෝජනයක් මා දකින්නේ නැත.
රොබ් ඩබ්ලිව්

1
සංස්කරණය සඳහා තවත් බැර කිරීම් නොමැත, නමුත් සිදු කර ඇත ;-).
Rmano

2
මේ සඳහා විශාල ස්තූතියක් පැවසීමට අවශ්‍ය විය - නියම පිළිතුර සහ මට බොහෝ දේ උදව් විය. මෙන්න මම අවසන් කළ දේ. notify-sendමගේ ශබ්දය අක්‍රිය වුවහොත් භාවිතා කිරීමට මම කැමතියි .
ඩැනියෙල් බක්මාස්ටර්

2
Asi මාසි බයිසාන්ස් - සහ මෙම පිටපත් - 16.04 දී මට හොඳින් ක්‍රියාත්මක වේ
ජෙෆ් පැකට්

52

ffmpeg Ffmpeg ස්ථාපනය කරන්න

මම භාවිතා කරන හොඳම මෙවලම්වලින් එකක් ffmpeg. එය බොහෝ වීඩියෝ දර්ශන තිර විකාශන මෙවලමකින් kazamගෙන වෙනත් ආකෘතියකට පරිවර්තනය කළ හැකිය.

සිට මෙය ස්ථාපනය කරන්න මෘදුකාංග මධ්‍යස්ථානයෙන් - ඔබ විශිෂ්ට ubuntu-restricted-extrasපැකේජයක් ස්ථාපනය කරන්නේ නම් එය ස්වයංක්‍රීයව ස්ථාපනය වේ.

කසාම්ට වීඩියෝ ආකෘතිවල ප්‍රතිදානය කළ හැකිය mp4 හෝ webm. සාමාන්‍යයෙන් ඔබට වඩා හොඳ ප්‍රති results ල ලැබෙනු ඇත mp4.

උදාහරණයක් ලෙස GIF සින්ටැක්ස් සෑදීම

වීඩියෝව gif බවට පරිවර්තනය කිරීමේ මූලික වාක්‍ය ඛණ්ඩය:

ffmpeg -i [inputvideo_filename] -pix_fmt rgb24 [output.gif]

GIF පරිවර්තනය කර ඇත - විශේෂයෙන් තත්පරයට සම්මත 25/29 රාමුවක් ඇති අය ඉතා විශාල විය හැකිය. උදාහරණයක් ලෙස - තත්පර 25 ක වේගයකින් යුත් 800Kb වෙබ්එම් තත්පර 15 ක වීඩියෝවක් 435Mb දක්වා ප්‍රතිදානය කළ හැකිය!

ඔබට ක්‍රම කිහිපයකින් මෙය අඩු කළ හැකිය:

රාමු

විකල්පය භාවිතා කරන්න -r [frame-per-second]

උදාහරණයක් වශයෙන් ffmpeg -i Untitled_Screencast.webm -r 1 -pix_fmt rgb24 out.gif

ප්‍රමාණය 435Mb සිට 19Mb දක්වා අඩු කර ඇත

ගොනු ප්‍රමාණයේ සීමාව

විකල්පය භාවිතා කරන්න -fs [filesize]

උදාහරණයක් වශයෙන් ffmpeg -i Untitled_Screencast.webm -fs 5000k -pix_fmt rgb24 out.gif

සටහන - මෙය දළ වශයෙන් ප්‍රතිදාන ගොනු ප්‍රමාණයක් වන බැවින් ප්‍රමාණය නියම කළ ප්‍රමාණයට වඩා තරමක් විශාල විය හැකිය.

ප්‍රතිදාන වීඩියෝ ප්‍රමාණය

විකල්පය භාවිතා කරන්න -s [widthxheight]

උදාහරණයක් වශයෙන් ffmpeg -i Untitled_Screencast.webm -s 320x200 -pix_fmt rgb24 out.gif

මෙය උදාහරණ 1366x768 වීඩියෝ ප්‍රමාණය 26Mb දක්වා අඩු කළේය

සදහටම ලූප් කරන්න

සමහර විට ඔබට GIF සදහටම ලූප වීමට අවශ්‍ය විය හැකිය.

විකල්පය භාවිතා කරන්න -loop_output 0

ffmpeg -i Untitled_Screencast.webm -loop_output 0 -pix_fmt rgb24 out.gif

තවදුරටත් ප්‍රශස්තිකරණය හා හැකිලීම

ඔබ imagemagick convert3% ත් 10% ත් අතර ව්‍යාකූල සාධකයක් භාවිතා කරන්නේ නම් ඔබට රූපයේ ප්‍රමාණය නාටකාකාර ලෙස අඩු කළ හැකිය

convert output.gif -fuzz 3% -layers Optimize finalgif.gif

අවසාන

Ask උබුන්ටු සඳහා කළමණාකරනය කළ හැකි දෙයකට අඩු කිරීම සඳහා මෙම විකල්පයන් කිහිපයක් ඒකාබද්ධ කරන්න.

ffmpeg -i Untitled_Screencast.webm -loop_output 0 -r 5 -s 320x200 -pix_fmt rgb24 out.gif

අනුගත

convert output.gif -fuzz 8% -layers Optimize finalgif.gif

උදාහරණයක්

රූප විස්තරය මෙහි ඇතුළත් කරන්න


ඔබ Docker ඇති අතර, ඔබේ වීඩියෝ නම් demo.mkv: ඔබ මෙම විධාන ක්රියාත්මක කළ හැකිය docker run --rm -v $(pwd):/tmp/video/ jrottenberg/ffmpeg -i /tmp/video/demo.mkv -framerate 1/2 -pix_fmt rgb24 -loop 0 /tmp/video/demo.gif,sudo chown $USER:$USER demo.gif
czerasz

3
මට එය පැමිණිලි කරන්නේ එවැනි විකල්පයක් නොමැති බවයි -loop_output...

1
+1 හොඳම පිළිතුර. නමුත් එක් q එකක් තවමත් ubuntu-restricted-extrasවිශිෂ්ට යැයි ඔබ සිතනවාද ??
සෙවරස් ටක්ස්

2
@ParanoidPanda දැන් විකල්පය -loop. එබැවින් එය එසේ වනු ඇත -loop 0. මෙන්න උබුන්ටු 16.04.01 හි වැඩ කරන විධානයකි ffmpeg -f x11grab -r 25 -s 100x100 -i :0.0+500,500 -pix_fmt rgb24 -loop 0 out2.gif. +500,500100x100 සෘජුකෝණාස්රය ආරම්භ කිරීමට X, Y පිහිටීම වේ. xgrabතිරය ​​ආදානය ලෙස ගනී.
සැන්බර්

34

නිහ ile විකාශනය

සයිලන්ට්කාස්ට් යනු සජීවිකරණ .gif රූප නිර්මාණය කිරීම සඳහා තවත් විශිෂ්ට ගුයි මෙවලමක් වේ. එහි විශේෂාංග අතර:

  • පටිගත කිරීමේ ක්‍රම 4 ක්:

    1. මුළු තිරය

    2. කවුළුව ඇතුළත

    3. සැරසිලි සහිත කවුළුව

    4. අභිරුචි තේරීම

  • නිමැවුම් ආකෘති 3:

    1. .gif

    2. .mp4

    3. .webm

    4. .png (රාමු)

    5. .mkv

  • ස්ථාපනය අවශ්‍ය නොවේ (අතේ ගෙන යා හැකි)

  • අභිරුචි වැඩ කරන නාමාවලිය

  • අභිරුචි fps

ස්ථාපනය

ඔබට නිතිපතා ස්ථාපනය කිරීමට අවශ්‍ය නම් සහ උබුන්ටු හි සහය දක්වන අනුවාදයක් ධාවනය කරන්නේ නම් ඔබට PPA විසින් සයිලන්ට්කාස්ට් ස්ථාපනය කළ හැකිය:

sudo add-apt-repository ppa:sethj/silentcast  
sudo apt-get update  
sudo apt-get install silentcast  

ඔබ උබුන්ටු හි සහය දක්වන අනුවාදයක් ධාවනය නොකරන්නේ නම් (ඔබ සැබවින්ම යාවත්කාලීන කළ යුතුය!) ඔබට GitHub පිටුවෙන් නවතම අනුවාදය බාගත කර පරායත්තයන් අතින් තෘප්තිමත් කළ යුතුය (ඔබට පිළිවෙලින් මෙතැනින් සහ මෙතැනින් යාඩ් සහ ffmpeg ලබා ගත හැකිය ) හෝ, ඔබ 13.10 වැනි තරමක් මෑත සංස්කරණයක් ධාවනය කරන්නේ නම් .deb කෙලින්ම බාගත කර ගැනීමට උත්සාහ කළ හැකිය .

ඔබ Gnome භාවිතා කරන්නේ නම් ඔබට Topicons දිගුව ස්ථාපනය කිරීමට අවශ්‍ය විය හැකිය නැවැත්වීම .

භාවිතය

ඔබගේ ඩෙස්ක්ටොප් පරිසරයේ ගුයි වෙතින් නිහ ile විකාශනය ආරම්භ කරන්න හෝ ධාවනය කරන්න silentcast ටර්මිනලයක විධානය . ඔබගේ සැකසුම් තෝරා තිරයේ ඇති විමසුම් අනුගමනය කරන්න. ඔබ පටිගත කිරීම අවසන් කළ විට, රාමු ගණනක් ඉවත් කිරීමෙන් අවසාන ප්‍රතිදානය ප්‍රශස්ත කිරීම සඳහා සංවාදයක් ඔබට ලබා දෙනු ඇත.

ගැඹුරු භාවිත මාර්ගෝපදේශ පිළිබඳ වැඩි විස්තර සඳහා, README, සබැඳි GitHub අනුවාදය හෝ /usr/share/doc/silentcastzless හෝ ඔබේ ප්‍රියතම සංස්කාරකය සමඟ ගබඩා කර ඇති දේශීය අනුවාදය දෙස බලන්න .

උදාහරණයක්

සටහන්:

නිහ ile විකාශනය තවමත් සංවර්ධන අවධියේ පවතින අතර එය තරමක් ස්ථාවර වුවද ඔබට දෝෂ කිහිපයක් හමුවිය හැකිය. ඔබ එසේ කරන්නේ නම් කරුණාකර ව්‍යාපෘතියේ GitHub නිකුතුව ට්රැකර් වෙත වාර්තා කරන්න . ඔබට PPA වෙතින් ස්ථාපනය කිරීමේ ගැටලුවක් තිබේ නම් සහ උබුන්ටු හි සහය දක්වන අනුවාදයක් ධාවනය කරන්නේ නම් පහත අදහස් දක්වන්න හෝ Launchpad හි නඩත්තුකරු (මා) අමතන්න .


මම 'නවත්වන්න' පහර දුන් විගසම එය කඩා වැටේ ...
ෆ්‍රැන්සිස්කෝ කෝරල්ස් මොරාලෙස්

RanFranciscoCorralesMorales ඔබට එය විධාන රේඛාවෙන් ධාවනය කර උත්සාහ කළ හැකිද? එය බිඳ වැටුණු පසු ප්‍රතිදානය ගෙන එය paste.ubuntu.com වෙත උඩුගත කර නැවත මෙහි සම්බන්ධ කරන්න එවිට මට බැලීමට හැකිය. ස්තූතියි!
සෙත්

1
මට මෙය සනාථ කරන බව විශිෂ්ටයි! මෙම පිළිතුරෙහි දැක්වෙන පරිදි විවෘත කවුළුවලින් පිටත ඉතා කුඩා (650 KB) .gif ගොනුවක් නිර්මාණය කරයි: askubuntu.com/questions/882419/… මට පෝස්ටරය එක් කළ හැකිය eth සෙත් විශිෂ්ට පුද්ගලයෙක් වන අතර AU හි මට උදව් කළේය සාමාන්‍ය චැට් රූම් එය සකසා ඇත :)
WinEunuuchs2Unix

ව්‍යාපෘතිය අතහැර දමා තිබේද? වසර දෙකකට ආසන්න කාලයක් තුළ නිධිය සඳහා කිසිදු කැපවීමක් කර නොමැත.
ෆ්ලක්ස්

අවාසනාවකට මෙන්, සෞඛ්‍ය ගැටලු සහ යුනී අතර, ඔව්. ගබඩාව දැනට අතහැර දමා ඇත. GitHub හි ව්‍යාපෘතිය කෙසේ වෙතත් ඔබට එහි නවතම කේතය ලබා ගත හැකිය.
සෙත්

8

මෙය ලැයිස්තුගත කිරීම සඳහා සියලු ආකාරයේ සංකීර්ණ හා හොඳින් වැඩ කරන (අනුමාන වශයෙන්) ක්‍රම තිබේ. කෙසේ වෙතත්, මට මීට පෙර හෝ පසුව එම ක්‍රියාවලිය හරහා යාමට අවශ්‍ය නොවීය. ඉතින්, මම සරලවම සබැඳි පරිවර්තකයක් භාවිතා කරමි, එය මට අවශ්‍ය වාර කිහිපය සඳහා ගැලපේ. මම මෙම වෙබ් අඩවිය භාවිතා කර ඇත:

http://ezgif.com/video-to-gif

එය මගේ වෙබ් අඩවිය නොවන අතර මම ඔවුන් සමඟ කිසිදු ආකාරයකින් සම්බන්ධ නොවෙමි. ඒවා මගේ පිටු සලකුණු වල ඇති අතර තවත් බොහෝ දේ ඇත.


මම මෙයට කැමතියි. සිදුවීම පිළිබඳ යූ ටියුබ් සඳහා මගේ ඩෙස්ක්ටොප් එක පටිගත කිරීම සඳහා මම දැනටමත් සරල තිර රෙකෝඩරය භාවිතා කරමි, එබැවින් mkv එක gif බවට හැරවීම මේ සමඟ පහසු විය.
isaaclw

8

මම නිර්මාණය කළේ record-gif.sh, රොබ් ඩබ්ලිව් ගේbyzanz-record-region වැඩි දියුණු කළ අනුවාදයක් :

සඳහා කොර වූ GUI byzanz, පරිශීලක අත්දැකීම් වැඩිදියුණු කිරීම ( මූසිකය තෝරා ගත හැකි ප්‍රදේශය , වාර්තාගත ප්‍රගති තීරුව, නැවත ධාවනය කළ හැකි පටිගත කිරීම ).

කවචය සමඟ ඩෙස්ක්ටොප් පටිගත කරන්න

  • පටිගත කිරීම duration;
  • save_asගමනාන්තය නියම කරන්න ;
  • මූසිකය සමඟ - පටිගත කළ යුතු ප්‍රදේශය තෝරන්න ;
  • පටිගත කිරීම නැවත ධාවනය කිරීම සඳහා ස්ක්‍රිප්ට් එකක් සාදන්න (cf. $HOME/record.again).

ස්ථාපනය කරන්න

මම ස්ථාපන පිටපතක් ද නිර්මාණය කළෙමි

curl --location https://git.io/record-gif.sh | bash -

1
sudo apt install autoconf byzanzමෙම ස්ක්‍රිප්ට් ධාවනය කිරීමට පෙර ඔබ කළ යුතුය . එය පෙරනිමියෙන් උබුන්ටු වලින් ස්ථාපනය කර නැත
Crantisz

@Crantisz ස්තුති, මම ස්ථාපනය සඳහා ස්ථාපන කේත රචනය යාවත්කාලීන autoconfහා byzanz. ඔබට එය උත්සාහ කළ හැකිද?
ඕවර්ඩ් ලෝපෙස්

මම එය වෙනත් පරිගණකයකින් පරීක්ෂා කළා. මගේ නැවුම් ලෙස ස්ථාපනය කර ඇති උබුන්ටු පද්ධතියේ git නොමැත. ඒ ඇයිදැයි මම නොදනිමි, නමුත් දෙවන වරට යෝග්‍ය Y / N ප්‍රශ්නයට පසුව පිටපත නතර වේ. ඔබට සියලු පරායත්තයන් එක් විධානයකින් ඇසුරුම් කළ හැකිද?
ක්‍රැන්ටිස්

RantCrantisz විධානය ස්ථාපක පිටපතක් වන අතර, ඔබට record-gif.sh අවශ්‍ය නම් ඔබට එය repo වෙතින් ලබා
Édouard Lopez

4
  1. මෙම පැකේජ 3 ස්ථාපනය කරන්න: imagemagick mplayer gtk-recordmydesktop
  2. තිරයේ / යෙදුමේ කොටසක් තිර විකාශනය ලෙස භාවිතා කිරීමට ඩෙස්ක්ටොප් රෙකෝඩරය ධාවනය කරන්න
  3. Https://github.com/nicolas-raoul/ogv2gifogv2gif.sh වෙතින් බාගන්න
  4. ධාවනය: ./ogv2gif.sh yourscreencast.ogv
  5. GIF ගොනුව එකම ඩිරෙක්ටරියට දමනු ලැබේ

100% maniat1k හි පිළිතුරෙන් දේවානුභාවයෙන් .


3

ඔබට රසිකයින් පවා ලබා ගැනීමට අවශ්‍ය නම්, ඔබට HTMl5 කැන්වස් තිර විකාශනය භාවිතා කර සජීවීකරණය කළ gif වලට වඩා නවීන ක්‍රමයක් භාවිතා කළ හැකිය. මෙම X11-කැන්වස්-screencast ව්යාපෘතිය සඳහා HTML5 කැන්වස් සජීවිකරණ තිර සටහන නිර්මාණය කරනු ඇත.

සබ්ලයිම් ටෙක්ස්ට් වෙබ් අඩවියේ මෙම තාක්‍ෂණය පිළිබඳ ප්‍රසිද්ධ උදාහරණ කිහිපයක් ඔබ දැක ඇති . x11-canvas-screencastමූසික කර්සරය ලුහුබැඳීම ඇතුළත් කිරීමෙන් මෙම ක්‍රමය තවත් පියවරක් ඉදිරියට තබයි. මෙන්න x11-කැන්වස්-තිර විකාශනය නිපදවන දේ පිළිබඳ නිරූපණයක්

එහි ප්‍රති color ලය සජීවීකරණය කළ gif එකකට වඩා හොඳ බැවින් එය එහි ඇති වර්ණ ගණනට පමණක් සීමා නොවන අතර එය කලාප පළල අඩු කරයි.


1
එය හොඳයි, නමුත් ඔබට මෙය පහසුවෙන් බෙදාගත නොහැක, උදා: ස්ලැක්, ට්විටර් යනාදිය
එලියා ලින්

Li එලියා ලින්න් ඇත්ත. මෙම විසඳුම ඉහළ රාමු අනුපාතය, අඩු කලාප පළල, සම්පූර්ණ වර්ණ ගැඹුර සඳහා ප්‍රශස්තිකරණය කර ඇත. එය ජාවාස්ක්‍රිප්ට් අවශ්‍ය බැවින් එය අතේ ගෙන යා නොහැක.
ජීන්_වුඩ්

3

හරි, එබැවින් මූසික ක්ලික් කිරීම් ද ග්‍රහණය කර ගැනීම සඳහා, මට හමු වූ එකම දෙය key-mon(README හරහා screenkey):

එවිට මම:

  • ආරම්භ කරන්න key-mon
  • භාවිතා xrectselතිරය ඛණ්ඩාංක බවට පත් කර ගැනීමට byzanzවිධානය
  • byzanzවිධානය ක්‍රියාත්මක කරන්න

... එය මේ වගේ ය:

out.gif

key-mon --visible_clickමූසික ක්ලික් කිරීම මත මූසික දර්ශකය වටා රවුමක් ඇද ගන්නා බව සලකන්න - මම කැමති, නමුත් උබුන්ටු 14.04.5 LTS හි මෙය තරමක් කැඩී ඇත, මන්ද මෙම රවුම නොපෙනෙන අතර ක්ලික් කිරීම් නිවැරදිව නිදර්ශනය කිරීම සඳහා වේගයෙන් අතුරුදහන් වේ (එනම් මූසික මුද්‍රණ සහ නිකුත් කිරීම්).


2

මම දැනටමත් මෙහි පළ කර ඇති ස්ක්‍රිප්ට් වල ඒකාබද්ධ සංස්කරණයක් මෑතකදී නිර්මාණය කළෙමි.
මූලික වශයෙන්, එය ඔබට තිර කලාපය පටිගත කිරීමට ඉඩ දෙයි, නමුත් සරල GUI සමඟ.

එම සිසිල් පිටපත් ලබා දීම ගැන රොබ් ඩබ්ලිව්

මෙන්න කේතය (හෝ ඔබ කැමති නම් සාරාංශය ):

#!/bin/bash

#Records selected screen region, with GUI

#This is combined version of GIF recording scripts, that can be found here: /ubuntu/107726/how-to-create-animated-gif-images-of-a-screencast
#Thanks to Rob W, and the other author (unmentioned), for creating this lovely scripts

#I do not own any rights to code I didn't write
#                                     ~Jacajack

DELAY=5 #Delay before starting
DEFDUR=10 #Default recording duration
TIME=$(date +"%Y-%m-%d_%H%M%S") #Timestamp
FOLDER="$HOME/Pictures/Byzanz" #Default output directory

#Sound notification to let one know when recording is about to start (and ends)
beep() {
    paplay /usr/share/sounds/freedesktop/stereo/message-new-instant.oga &
}

#Custom recording duration as set by user
USERDUR=$(gdialog --title "Duration?" --inputbox "Please enter the screencast duration in seconds" 200 100 2>&1)

#Duration and output file
if [ $USERDUR -gt 0 ]; then
    D=$USERDUR
else
    D=$DEFDUR
fi

#Get coordinates using xrectsel from https://github.com/lolilolicon/xrectsel
REGION=$(xrectsel "--x=%x --y=%y --width=%w --height=%h") || exit -1

notify-send "GIFRecorder" "Recording duration set to $D seconds. Recording will start in $DELAY seconds."

for (( i=$DELAY; i>0; --i )) ; do
    sleep 1
done

#Record
beep
byzanz-record --cursor --verbose --delay=0 ${REGION} --duration=$D "$FOLDER/byzanz-record-region-$TIME.gif"
beep

notify-send "GIFRecorder" "Screencast saved to $FOLDER/byzanz-record-region-$TIME.gif"

2

මූසික ක්ලික් කිරීම් හෝ යතුරු පහරවල් වල දෘශ්‍ය පටිගත කිරීම් ඔබට අවශ්‍ය නම්, තිර රුව ඔබේ හොඳම ඔට්ටුවයි: https://github.com/wavexx/screenkey


2
screenkeyමූසික ක්ලික් කිරීම් හසුරුවන්නේ කෙසේදැයි මම නොදනිමි (එය යතුරුපුවරු ඇඟවීම සඳහා පමණක් බව පෙනේ), කෙසේ වෙතත්, එහි README මඟින් key-monඑය කළ හැකි දේ ගැන සඳහන් කරයි, මගේ පිළිතුර පහත බලන්න.
sdaau

1

භාවිතා කරන්න gtk-recordmydesktopසහ ffmpeg:

apt-get install gtk-recordmydesktop ffmpeg

රෙකෝඩ්මයිඩෙස්ක්ටොප් ධාවනය කර තිරයේ / යෙදුමේ කොටසක් තිර විකාශනය ලෙස භාවිතා කිරීමට ග්‍රහණය කරගන්න:

gtk-recordmydesktop

ogv2gif.shපහත අන්තර්ගතය සමඟ සාදන්න :

INPUT_FILE=$1
FPS=15
WIDTH=320
TEMP_FILE_PATH="~/tmp.png"
ffmpeg -i $INPUT_FILE -vf fps=$FPS,scale=$WIDTH:-1:flags=lanczos,palettegen $TEMP_FILE_PATH
ffmpeg -i $INPUT_FILE -i $TEMP_FILE_PATH -loop 0 -filter_complex "fps=$FPS,scale=$WIDTH:-1:flags=lanczos[x];[x][1:v]paletteuse" $INPUT_FILE.gif
rm $TEMP_FILE_PATH

එය භාවිතා කරන්න :

./ogv2gif.sh yourscreencast.ogv

යොමුව:


1

ඉහත සියලු ක්‍රම මම පරීක්ෂා කර බැලුවෙමි, වඩාත්ම සරල ක්‍රමය:

  1. ogv ලබා ගැනීම සඳහා gtk-recordmydesktop සහ key-mon භාවිතා කරන්න
  2. ffmpeg -i xx.ogv xx.gif <- කිසිදු පරාමිතියක් නොමැතිව .

fps මුල් පිටපතක් වන අතර gif ප්‍රමාණය ogv ගොනුවට වඩා අඩුය.

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.