একটি স্ক্রিনকাস্টের অ্যানিমেটেড জিআইএফ চিত্রগুলি কীভাবে তৈরি করবেন?


476

আমি স্ক্রিন কাস্টগুলির অ্যানিমেটেড জিআইএফ চিত্রগুলি দেখেছি (নীচের চিত্রের মতো) উত্তরগুলি উন্নত করার উপায় হিসাবে এই সাইটে কয়েকবার প্রচার হয়েছে।

অ্যানিমেটেড জিআইএফ চিত্র

এগুলি তৈরি করতে কোন সরঞ্জামচেন ব্যবহার করা হচ্ছে? এমন কোনও প্রোগ্রাম রয়েছে যা স্বয়ংক্রিয়ভাবে এটি করে, বা লোকেরা স্ক্রিনকাস্ট গ্রহণ করছে, এগুলি স্থির ফ্রেমের একটি সিরিজে রূপান্তর করছে এবং তারপরে জিআইএফ চিত্রগুলি তৈরি করছে?


6
LICEcap (http://www.cockos.com/licecap) নীচের যে কোনও সমাধানের চেয়ে অনেক সহজ, কারণ এটি জিইউআই ভিত্তিক। এটি স্বাধীনতা এবং মূল্য হিসাবে বিনামূল্যে। একমাত্র ক্ষতি হ'ল আপনাকে ওয়াইন দিয়ে চালাতে হবে।
ডেনিস

4
সম্পর্কিত: জিআইএফ স্ক্রিনকাস্টিং; ইউনিক্স এবং লিনাক্স স্ট্যাক এক্সচেঞ্জ থেকে ইউএনএক্স উপায়
ক্রিশ্চিয়ান সিউপিতু


2
এই উদাহরণটি কি উইন্ডোজে নেওয়া হয়েছে?
ক্লিমেট

@ ক্লিমেট এটিও আমি প্রথম লক্ষ্য করেছি, :)
সর্বজনীনভাবে

উত্তর:


269

পিক

একটি নতুন অ্যাপ্লিকেশন যা আপনাকে আপনার স্ক্রীন থেকে সহজেই জিআইএফ রেকর্ড করতে দেয়।

পিক স্ক্রিনকাস্ট ডেমো

যাইহোক, মনে রাখবেন যে জিআইএফের একটি খুব সীমিত রঙের প্যালেট রয়েছে তাই এগুলি ব্যবহার করা খুব ভাল ধারণা নয়।

উবুন্টু 18.10 থেকে আপনি সরাসরি পিক ইনস্টল করতে পারেন।

sudo apt install peek

উবুন্টুর পুরানো সংস্করণগুলির জন্য, আপনি এর পিপিএ থেকে পিকের সর্বশেষতম সংস্করণ ইনস্টল করতে পারেন ।

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

গিটহাব রেপোতে আরও তথ্য সন্ধান করুন ।


2
হ্যাঁ এই দুর্দান্ত। যার একমাত্র ব্যবহারে X11 সাথে কাজ করে এবং GNOME 3. এ পরিকল্পনা
অজিত আর নায়ার

2
@ বিস্ট উইন্টারওল্ফ এবং এক্সিলাস্টএক্স: এখানে বাগ রিপোর্ট পোস্ট করবেন না, ইস্যু ট্র্যাকারটি ব্যবহার করুন যেখানে লোকেরা আসলে তাদের দেখার যত্ন নেয়! তা এখানে প্রতিবেদন করুন: github.com/phw/peek/issues
oligofren থেকে

2
এটা খুব ভালো একটা যন্ত্র।
মাইকে

1
@ জোপ ভি। আপনি কীভাবে কোনও রেকর্ড রেকর্ড করলেন?
দুধভস্কি

1
@ মিলকভস্কি আমি এটি রেকর্ড করি নি। যা বলা হয়ে গেছে, আমার ধারণা তারা একটি ভার্চুয়াল মেশিন ব্যবহার করেছে এবং এটি রেকর্ড করেছে।
stommestack

272

Byzanz

জিআইএফের স্ক্রিনকাস্টগুলি রেকর্ড করতে আমি খুঁজে পেয়েছি সেরা সফ্টওয়্যার হ'ল বাইজানজ।

বাইজানজ দুর্দান্ত কারণ এটি সরাসরি জিআইএফ-তে রেকর্ড করে, ফাইলের আকারকে ন্যূনতম পর্যন্ত বজায় রাখার সময় মান এবং এফপিএস চিত্তাকর্ষক।

স্থাপন

বাইজানজ এখন মহাবিশ্বের সংগ্রহস্থল থেকে পাওয়া যায়:

sudo apt-get install byzanz

ব্যবহার

এটি ইনস্টল হয়ে গেলে আপনি এটি টার্মিনালে চালাতে পারেন।

এটি এখনই দিয়েছিলাম এটি একটি ছোট উদাহরণ

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

এখানে চিত্র বর্ণনা লিখুন


3
ধন্যবাদ, দুর্দান্ত সরঞ্জাম! রঙগুলি সর্বদা নির্ভুল হয় না তবে এটি একটি সামান্য বিবরণ। আমি একটি শেল স্ক্রিপ্ট লিখেছি যা নীচে একটি উত্তরে পোস্ট করা একটি উইন্ডো (ব্যবহারকারী দ্বারা রানটাইমের সময় নির্বাচিত) ক্যাপচারে সহায়তা করে
রব ডব্লু

57
বাইজানজের কোনও ইউআই নেই! আমি যে অঞ্চলটি রেকর্ড করতে চাইছি তার x, y, প্রস্থ এবং উচ্চতা অনুমান করার কথা? এটি কিছুটা হাস্যকর বিষয় যে ২০১৪ সালে আমাকে এখনও এটি করতে হয়েছিল।
ড্যান ড্যাসক্লেস্কু

5
@ ড্যানডাসকলেসকু কেউ বলে না আপনার এটি ব্যবহার করা দরকার ... আমি জিইউআইয়ের চেয়ে টার্মিনালটিকে অনেক পছন্দ করি, এতে কী ভুল?
ব্রুনো পেরেইরা

31
@ ড্যানডাসক্লেস্কু অনুমান করার দরকার নেই। আপনি xwininfoউইন্ডো বৈশিষ্ট্য পেতে ব্যবহার করতে পারেন ।
মার্কাস মুলার

4
আগে থেকে সময়কাল জানতে না পেরে কোনও উপায়? রেকর্ডিংয়ের সময় আমি কখনই জানি না যে এটি কতটা সময় নেবে।
নিকোলাস রাউল

236

প্রথমে এটি ইনস্টল করুন:

sudo apt-get install imagemagick mplayer gtk-recordmydesktop

এগুলি হ'ল প্রয়োজনীয় স্টাফ, ইমেজম্যাগিক, এমপ্লেয়ার এবং ডেস্কটপ রেকর্ডার। তারপরে স্ক্রিনকাস্ট হিসাবে ব্যবহার করার জন্য স্ক্রিন / অ্যাপ্লিকেশনটির কোনও অংশ ক্যাপচার করতে ডেস্কটপ রেকর্ডার ব্যবহার করুন। পরে ডেস্কটপ রেকর্ডার একটি মধ্যে রেকর্ডিং রক্ষা করেছে OGV ভিডিও , MPlayer তাদের 'আউটপুট' ডিরেক্টরির মধ্যে সংরক্ষণ, কোন JPEG স্ক্রিনশট ক্যাপচার ব্যবহার করা হবে।

টার্মিনালে:

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

স্ক্রিনশটগুলি অ্যানিমেটেড জিআইএফ-তে রূপান্তর করতে ইমেজম্যাগিক ব্যবহার করুন ।

convert output/* output.gif

আপনি এইভাবে স্ক্রিনশটগুলি অনুকূল করতে পারেন:

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

35
জিআইএফ অনুকূল করতে অন্য উপায় হ'ল জিফসিকল ব্যবহার করা: gifsicle -O in.gif -o out.gifআমি কেবল চেষ্টা করেছি এবং ফাইলের আকারে 100x হ্রাস পেয়েছি।
ইয়ারোগির্গ

10
যারা ভাবছেন তাদের জন্য, @ ইয়োগির্গ কমান্ডের প্রথম পতাকাটি মূলধন "O",
অঙ্কটি

2
বাহ, গিফসিকল কেবল আমার দ্রুত তৈরি করেছে তবে ছোট নয়, এবং রূপান্তরিত অপ্টিমাইজ কমান্ড এটিকে পুনরায় রূপান্তরিত করেছে।
ম্যালকমম ওশান

6
আমি গত দুই মিশ্রন সুপারিশ convertএক ধাপ: convert output/* -layers Optimize output.gif। আমার জন্য, এটি প্রক্রিয়াজাতকরণের সময় বাড়ানোর পাশাপাশি আউটপুট ফাইলকে আরও ছোট করে তোলে। আমি এই পদক্ষেপগুলি আলাদাভাবে করার কোনও কারণ দেখছি না। (আমি -fuzz 10%
তর্কটি

1
@ ম্যালকমম ওশনের মতো convertবিবৃতি এটিকে ঘৃণ্যতার বাইরে ফেলেছে । দস্তাবেজগুলি অনুসারে ( ইমেজমাগিক.আর / স্প্রিপ্ট / কম্যান্ড- লাইন-options.php#layers ) optimizeসময়ের সাথে সাথে বাস্তবায়ন পরিবর্তন হতে পারে। তবে পতাকাটির convertসাথে সামান্য টুইটযুক্ত বিবৃতি -coalesceজিনিসগুলির উন্নতি করেছে, তবে এটি কোথায় গ্রহণযোগ্য ছিল তা এখনও তা নয় not আমি -layers optimize-transparencyসেরা ফলাফলের জন্য সেটিংটি ব্যবহার করে শেষ করেছি :convert 'output/*.jpg' -coalesce -layers optimize-transparency optimised.gif

136

সংক্ষিপ্ত বিবরণ

এই উত্তরে তিনটি শেল স্ক্রিপ্ট রয়েছে:

  1. byzanz-record-window - রেকর্ডিংয়ের জন্য একটি উইন্ডো নির্বাচন করতে।
  2. byzanz-record-region - রেকর্ডিংয়ের জন্য পর্দার একটি অংশ নির্বাচন করতে।
  3. এমএইচসি দ্বারা 1 এর জন্য একটি সাধারণ জিইউআই ফ্রন্ট-এন্ড ।

ভূমিকা

ব্রুনো পেরিরাকে আমার সাথে পরিচয় করানোরbyzanz জন্য ধন্যবাদ ! এটি জিআইএফ অ্যানিমেশন তৈরির জন্য বেশ কার্যকর। রঙগুলি কিছু ক্ষেত্রে বন্ধ থাকতে পারে তবে ফাইলের আকারটি এটির জন্য তৈরি করে। উদাহরণ: 40 সেকেন্ড, 3.7Mb

ব্যবহার

আপনার মধ্যে একটি ফোল্ডারে নিম্নলিখিত দুটি স্ক্রিপ্ট সংরক্ষণ করুন $PATH। নির্দিষ্ট উইন্ডোটির স্ক্রিনকাস্ট তৈরি করতে এখানে প্রথম স্ক্রিপ্ট ব্যবহার করার উদাহরণ।

  1. চালান byzanz-record-window 30 -c output.gif
  2. আপনি ক্যাপচার করতে চান উইন্ডোতে (Alt-ট্যাব) যান। এটিতে ক্লিক করুন।
  3. 10 সেকেন্ড অপেক্ষা করুন (হার্ড-কোডেড $DELAY) এতে আপনি রেকর্ডিংয়ের জন্য প্রস্তুত হন।
  4. বীপের পরে (ফাংশনটিতে সংজ্ঞায়িত beep) byzanzশুরু হবে।
  5. 30 সেকেন্ড পরে (এটি প্রথম 30ধাপের অর্থ ), byzanzশেষ হয়। একটি বিপ আবার সম্প্রচারিত হবে।

আমার শেল স্ক্রিপ্টের যে কোনও যুক্তি নিজেই যুক্ত হয়ে গেছে তা বোঝাতে আমি -cপতাকাটি অন্তর্ভুক্ত করেছি । পতাকা বলে এছাড়াও স্ক্রীণকাস্ট কার্সার অন্তর্ভূক্ত করে নেয়। দেখুন বা আরও বিশদ জন্য।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

নির্ভরতা: এক্সরেটসেলxrectsel থেকে । সংগ্রহস্থলটি ক্লোন করুন এবং এক্সিকিউটেবল পেতে রান করুন । (যদি এটি প্রতিবাদ করে তবে কোনও মেকফিল নেই, রান করুন running মেকিংয়ের আগে)।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

( এমএইচসি দ্বারা মন্তব্য ): আমি একটি সাধারণ জিইউআই সংলাপের মাধ্যমে স্ক্রিপ্টটি সংশোধন করতে স্বাধীনতা নিয়েছি

#!/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"

17
এই স্ক্রিপ্টগুলি কি গিথুবের মতো কোথাও রাখা হয়েছে? এগুলি দুর্দান্ত উপকারী, স্ট্যাক ওভারফ্লো উত্তরের পাঠ্যের চেয়ে যদি তাদের কোথাও আরও ভাল রাখা হয় তবে ভাল লাগবে।
কেএফরো

1
@ কেএফরো এটি উবুন্টুকে জিজ্ঞাসা করুন, এসও নয়;) না, আমি এগুলি একটি গিট সংগ্রহস্থলের মধ্যে রাখি নি, কারণ স্ক্রিপ্টগুলি নিজেরাই খারাপভাবে নথিভুক্ত হয়েছে (ব্যবহারকারীদের জন্য)। সাথে থাকা ডকুমেন্টেশনগুলি উত্তরের সাথে অন্তর্ভুক্ত করা হয়েছে, সুতরাং আমি গিট সংগ্রহস্থলে ফাইলগুলি এবং ডকুমেন্টেশনগুলি বিভক্ত করার কোনও সুবিধা দেখছি না।
রব ডাব্লু

1
সম্পাদনার জন্য আর ক্রেডিট নেই, তবে সম্পন্ন ;-)।
রোমানো

2
এর জন্য কেবল একটি বিশাল ধন্যবাদ বলতে চেয়েছিলাম - দুর্দান্ত উত্তর এবং আমাকে অনেক সাহায্য করেছে। এখানে আমি কি শেষ করেছি। notify-sendআমার শব্দ বন্ধ হয়ে গেলে আমিও পাশাপাশি ব্যবহার করতে চাই ।
ড্যানিয়েল বাকমাস্টার

2
@ ম্যাসি বাইজানজ - এবং এই লিপিগুলি - 16.04
জেফ পেকেট

51

ffmpeg Ffmpeg ইনস্টল করুন

আমার ব্যবহৃত সেরা সরঞ্জামগুলির মধ্যে একটি ffmpeg। এটি স্ক্রিনকাস্ট সরঞ্জাম থেকে সর্বাধিক ভিডিও নিতে kazamএবং এটিকে অন্য ফর্ম্যাটে রূপান্তর করতে পারে।

এটি সফ্টওয়্যার-কেন্দ্র থেকে ইনস্টল করুন - যদি আপনি দুর্দান্ত ubuntu-restricted-extrasপ্যাকেজটি ইনস্টল করেন তবে এটি স্বয়ংক্রিয়ভাবে ইনস্টল হবে ।

কাজাম ভিডিও ফর্ম্যাটে mp4বা আউটপুট করতে পারেন webm। সাধারণত আপনি mp4ফর্ম্যাটে আরও ভাল ফলাফল আউটপুট পেতে ।

উদাহরণস্বরূপ জিআইএফ সিনট্যাক্স তৈরি করে

ভিডিওটিকে জিআইএফ-তে রূপান্তর করার প্রাথমিক বাক্য গঠনটি হ'ল:

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

জিআইএফ রূপান্তরিত - বিশেষত প্রতি 25 সেকেন্ডের 25/29 ফ্রেমযুক্ত স্ট্যান্ডার্ডগুলি খুব বড় হতে পারে। উদাহরণস্বরূপ - 25fps এ একটি 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 এ নামিয়েছে

চিরকালের জন্য লুপ

কখনও কখনও আপনি জিআইএফ চিরকালের জন্য লুপ করতে চান।

বিকল্পটি ব্যবহার করুন -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

পরিশেষে

জিজ্ঞাসা উবুন্টুর জন্য পরিচালনাযোগ্য কিছু হ্রাস করতে এই বিকল্পগুলির কয়েকটি মিশ্রিত করুন।

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

2
আমার কাছে এটা অভিযোগ সেখানে যেমন বিকল্প যে -loop_output...

1
+1 সেরা উত্তর। তবে একটি কিউ আপনি এখনও দুর্দান্ত বলে মনে করেন ubuntu-restricted-extras??
সেভেরাস টাক্স

1
@ পরানয়েডপান্ডা এখন অপশনটি -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 আয়তক্ষেত্র শুরু করার জন্য এক্স, ওয়াই অবস্থান। xgrabইনপুট হিসাবে পর্দা লাগে।
সানবার

34

Silentcast

সাইলেন্টকাস্ট হ'ল অ্যানিমেটেড .gif চিত্র তৈরির জন্য আরও একটি দুর্দান্ত গুই ভিত্তিক সরঞ্জাম। এর বৈশিষ্ট্যগুলির মধ্যে রয়েছে:

  • 4 রেকর্ডিং মোড:

    1. পুরো পর্দা

    2. উইন্ডোর ভিতরে

    3. সজ্জা সঙ্গে উইন্ডো

    4. কাস্টম নির্বাচন

  • 3 আউটপুট ফর্ম্যাট:

    1. .gif

    2. .mp4

    3. .webm

    4. .png (ফ্রেম)

    5. .mkv

  • কোন ইনস্টলেশন প্রয়োজন (বহনযোগ্য)

  • কাস্টম ওয়ার্কিং ডিরেক্টরি

  • কাস্টম fps

স্থাপন

আপনি যদি নিয়মিত ইনস্টলেশন চান এবং উবুন্টুর সমর্থিত সংস্করণটি চালাচ্ছেন তবে আপনি পিপিএ দ্বারা সাইলেন্টকাস্ট ইনস্টল করতে পারেন:

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

আপনি উবুন্টু এর একটি সমর্থিত সংস্করণ (আপনি কি সত্যিই আপগ্রেড করা উচিত!) ব্যবহার না করা হলে আপনি সর্বশেষ সংস্করণ ডাউনলোড করতে হবে GitHub পাতা থেকে এবং ম্যানুয়ালি নির্ভরতা (আপনার কাছ থেকে Yad এবং ffmpeg রাজী করান করতে সন্তুষ্ট এখানে এবং এখানে যথাক্রমে) অথবা, আপনি যদি 13.10 এর মতো সামান্য সাম্প্রতিক সংস্করণটি চালাচ্ছেন তবে আপনি সরাসরি .deb ডাউনলোড করার চেষ্টা করতে পারেন ।

আপনি যদি জোনোম ব্যবহার করছেন তবে সাইলেন্টকাস্ট থামানো আরও সহজ করার জন্য আপনি টপিকনস এক্সটেনশনটি ইনস্টল করতে চাইতে পারেন ।

ব্যবহার

আপনার ডেস্কটপ পরিবেশের গুই থেকে সাইলেন্টকাস্ট শুরু করুন বা silentcastএকটি টার্মিনালে কমান্ডটি চালান । আপনার সেটিংস বাছুন এবং অন-স্ক্রিন প্রম্পটগুলি অনুসরণ করুন। আপনি যখন রেকর্ডিং সম্পন্ন করবেন তখন আপনাকে নির্দিষ্ট সংখ্যক ফ্রেম সরিয়ে চূড়ান্ত আউটপুট অনুকূলকরণের জন্য একটি ডায়ালগ উপস্থিত করা হবে।

গভীরতার ব্যবহারের দিকনির্দেশগুলির জন্য আরও পড়ুন README, হয় অনলাইন গিটহাব সংস্করণ বা স্থানীয় সংস্করণটি /usr/share/doc/silentcastজলেস বা আপনার পছন্দসই সম্পাদক দ্বারা সঞ্চিত ।

উদাহরণ

নোট:

সাইলেন্টকাস্ট এখনও বিকাশের পর্যায়ে রয়েছে এবং এটি বেশ স্থিতিশীল হলেও আপনি কিছু বাগের মুখোমুখি হতে পারেন। যদি আপনি তা করেন তবে তাদের প্রকল্পের গিটহাব ইস্যু ট্র্যাকার সম্পর্কে রিপোর্ট করুন । আপনার যদি পিপিএ থেকে ইনস্টল করতে সমস্যা হয় এবং উবুন্টুর সমর্থিত সংস্করণটি চালাচ্ছেন তবে নীচে একটি মন্তব্য দিন বা লঞ্চপ্যাডে রক্ষণাবেক্ষণকারী (আমার) সাথে যোগাযোগ করুন।


আমি 'স্টপ'
ফ্রান্সিসকো

@ ফ্রেঞ্চিসকো কররেলেস মোরেলস আপনি কি এটি কমান্ড-লাইন থেকে চালাতে পারেন এবং তারপরে চেষ্টা করতে পারেন? এটি একবার ক্র্যাশ হয়ে গেলে আউটপুট নেয় এবং এটি পেস্ট.বুন্টু.কম এ আপলোড করে এটিকে এখানে আবার লিঙ্ক করে দেয় যাতে আমি একবার দেখতে পারি। ধন্যবাদ!
শেঠ

1
আমি দুর্দান্ত কাজটি নিশ্চিত করতে পারি! এটি একটি উত্তম উইন্ডোজের বাইরে খুব রেজোলিউশনের সাথে একটি খুব ছোট (650 কেবি) .gif ফাইল তৈরি করে যা এই উত্তরে প্রকাশিত হয়েছে: Askubuntu.com/questions/882419/… আমি পোস্টার যুক্ত করতে পারি @ সেথ দুর্দান্ত লোক এবং আমাকে এইউতে সহায়তা করেছে সাধারণ চ্যাট রুম এটি সেট আপ করে :)
WinEunuuchs2 ইউনিক্স

প্রকল্প কি পরিত্যক্ত? প্রায় দু'বছরে কোনও ভাণ্ডার নিয়ে কোনও চুক্তি হয়নি।
ফ্লাক্স

দুর্ভাগ্যক্রমে, স্বাস্থ্য সমস্যা এবং ইউনি এর মধ্যে @ ফ্লাক্স হ্যাঁ। সংগ্রহস্থল বর্তমানে পরিত্যক্ত। গিটহাবের প্রকল্পটি তবে তা নয় এবং আপনি সেখানে সর্বশেষতম কোডটি পেতে পারেন।
শেঠ

8

এখানে তালিকাভুক্ত করার জন্য এখানে জটিল এবং সু-কাজের (সম্ভাব্য) উপায়গুলি রয়েছে are যাইহোক, আমি আগে বা পরে কখনই এই প্রক্রিয়াটি অতিক্রম করতে চাইনি। সুতরাং, আমি কেবলমাত্র একটি অনলাইন রূপান্তরকারী ব্যবহার করি যা আমার প্রয়োজন অনুসারে কয়েকবার করতে হবে। আমি এই সাইটটি ব্যবহার করেছি:

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

এটি আমার সাইট নয় এবং আমি কোনওভাবেই তাদের সাথে অনুমোদিত নই। আমার বুকমার্কগুলিতে তারা হ'ল আরও অনেক কিছু।


আমি এই পছন্দ। আমি উপলক্ষে আপনার ডেস্কটপটি ইউটিউবের জন্য রেকর্ড করতে ইতিমধ্যে সিম্পলস্ক্রিনেকর্ডার ব্যবহার করেছি, সুতরাং এমকেভিটিকে জিআইএফ-এ রূপান্তর করা এটির সাথে সহজ ছিল।
isaaclw

8

আমি তৈরি করেছি record-gif.sh, রব ডাব্লু এরbyzanz-record-region একটি উন্নত সংস্করণ :

এর জন্য একটি খোঁড়া জিইউআই byzanz, ব্যবহারকারীর অভিজ্ঞতা উন্নত করেছে ( মাউস-নির্বাচনযোগ্য অঞ্চল , রেকর্ড অগ্রগতি বার, পুনরায় খেলতে সক্ষম রেকর্ডিং )।

শেল দিয়ে ডেস্কটপ রেকর্ড করুন

  • রেকর্ডিং সেট duration;
  • save_asগন্তব্য নির্ধারণ ;
  • রেকর্ড করতে এলাকাটি মাউসের সাথে নির্বাচন করুন ;
  • রেকর্ডিং পুনরায় খেলতে স্ক্রিপ্ট তৈরি করুন (সিএফ। $HOME/record.again)।

ইনস্টল করুন

আমি একটি ইনস্টলেশন স্ক্রিপ্টও তৈরি করেছি

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

1
sudo apt install autoconf byzanzএই স্ক্রিপ্টটি চালানোর আগে আপনাকে করা দরকার । এটি উবুন্টুতে ডিফল্টরূপে ইনস্টল করা হয়নি
ক্র্যান্টিস

@ ক্র্যান্টিজ ধন্যবাদ, আমি ইনস্টল করার জন্য স্ক্রিপ্ট আপডেট করেছি autoconfএবং byzanz। আপনি এটি চেষ্টা করতে পারেন?
ouডার্ড লোপেজ

আমি কেবল এটি অন্য পিসিতে পরীক্ষা করেছি। আমার নতুন-ইনস্টল করা উবুন্টু সিস্টেমে গিট নেই। এবং আমি জানি না কেন, তবে স্ক্রিপ্টটি দ্বিতীয়বার যথাযথ ওয়াই / এন প্রশ্নের পরে থামবে। আপনি কি সমস্ত আদেশ নির্ভরতা একটি আদেশে প্যাক করতে পারেন?
ক্রান্টিস

@Crantisz কমান্ড একটি ইনস্টলার স্ক্রিপ্ট, যদি আপনি শুধু record-gif.sh চাও, তুমি পারবে এটা রেপো থেকে পেতে
Edouard লোপেজ

4
  1. এই 3 টি প্যাকেজ ইনস্টল করুন: imagemagick mplayer gtk-recordmydesktop
  2. স্ক্রিনকাস্ট হিসাবে ব্যবহার করার জন্য স্ক্রিন / অ্যাপ্লিকেশনটির কোনও অংশ ক্যাপচার করতে ডেস্কটপ রেকর্ডার চালান
  3. Https://github.com/nicolas-raoul/ogv2gifogv2gif.sh থেকে ডাউনলোড করুন
  4. চালান: ./ogv2gif.sh yourscreencast.ogv
  5. জিআইএফ ফাইলটি একই ডিরেক্টরিতে রাখা হবে

100% maniat1k এর উত্তর থেকে অনুপ্রাণিত ।


3

আপনি যদি আরও ফ্যানসিয়ার পেতে চান তবে আপনি এইচটিএমএল 5 ক্যানভাসের স্ক্রিনকাস্টিং ব্যবহার করে অ্যানিমেটেড জিএফগুলির চেয়ে আরও পরিশীলিত পদ্ধতি ব্যবহার করতে পারেন। X11-ক্যানভাস-স্ক্রীণকাস্ট প্রকল্পের একটি HTML5 ক্যানভাস অ্যানিমেটেড স্ক্রিন ক্যাপচার তৈরি করবে।

সাব্লাইম টেক্সট ওয়েবসাইটে আপনি এই প্রযুক্তির কয়েকটি বিখ্যাত উদাহরণ দেখে থাকতে পারেন । x11-canvas-screencastমাউস কার্সারের ট্র্যাকিং সংহত করে এই পদ্ধতিটিকে আরও একধাপ এগিয়ে নিয়ে যায়। এক্স 11-ক্যানভাস-স্ক্রিনকাস্ট কী উত্পাদন করে তার একটি ডেমো এখানে

ফলাফলটি অ্যানিমেটেড জিএফের চেয়ে ভাল কারণ এটি যে রঙের সংখ্যার মধ্যে সীমাবদ্ধ নয় এবং এতে ব্যান্ডউইদথ কম লাগে।


1
যে সুন্দর এবং সব কিন্তু আপনি সহজেই, টুইটার ইত্যাদি এই যেমন ফসকা ভাগ করতে পারবেন না
ইলিয়াস লিন

@ এলিজাহলিন খুব সত্য। এই দ্রবণটি উচ্চ ফ্রেমের হার, কম ব্যান্ডউইথ, পূর্ণ রঙের গভীরতার জন্য অনুকূলিত। এটি পোর্টেবল নয় (উদাহরণস্বরূপ একটি ট্যুইটে এম্বেড করার জন্য) এটির জাভাস্ক্রিপ্ট দরকার।
জিন_উড

3

ঠিক আছে, তাই মাউস ক্লিকগুলি ক্যাপচার করার জন্য, আমি খুঁজে পেলাম কেবলমাত্র key-mon(এর README এর মাধ্যমে screenkey):

তখন আমি:

  • শুরু key-mon
  • ব্যবহার করুন xrectselপর্দা পেতে একটি পুরা স্থানাঙ্ক byzanzকমান্ড
  • byzanzকমান্ড চালান

... এবং এটি এর মতো দেখায়:

out.gif

নোটটি key-mon --visible_clickমাউস ক্লিকের উপরে মাউস পয়েন্টারটির চারপাশে একটি বৃত্ত আঁকবে - যা আমি পছন্দ করি তবে উবুন্টু 14.04.5 এলটিএসে এটি কিছুটা ভাঙা হয়েছে, কারণ ক্লিকগুলি সঠিকভাবে চিত্রিত করার জন্য এই বৃত্তটি উপস্থিত হয় না এবং দ্রুত অদৃশ্য হয়ে যায় (যেমন, মাউস টিপুন এবং রিলিজ)।


2

আমি ইতিমধ্যে এখানে পোস্ট করা স্ক্রিপ্টগুলির সম্মিলিত সংস্করণ তৈরি করেছি।
মূলত, এটি আপনাকে স্ক্রিন অঞ্চল রেকর্ড করতে দেয় তবে সাধারণ জিইউআই দিয়ে।

এই দুর্দান্ত স্ক্রিপ্টগুলি সরবরাহ করার জন্য রব ডব্লু ধন্যবাদ জানায়

এখানে কোডটি (বা আপনি চাইলে টুকরো টুকরো ):

#!/bin/bash

#Records selected screen region, with GUI

#This is combined version of GIF recording scripts, that can be found here: https://askubuntu.com/questions/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. ওজিভি পেতে gtk- রেকর্ডমিডেস্কটপ এবং কী-মন ব্যবহার করুন
  2. ffmpeg -i xx.ogv xx.gif <- কোনও প্যারামিটার ছাড়াই

fps আসল, এবং জিআইএফ আকার ওজিভি ফাইলের চেয়ে কম হয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.