আমার ইউজ-কেসটি ভিডিও থেকে মাত্র একটি থাম্বনেইল, <video>ট্যাগ পোস্টার হিসাবে ব্যবহার করার জন্য কেবল একটি একক ফাইল । সুতরাং, এটি করার একটি দ্রুত উপায় কী হবে?
সহ ffmpeg, আপনি এটি করতে পারেন:
ffmpeg -ss 123 -y -i video.mp4 -r 1 -updatefirst 1 -frames 1 poster.jpg
যে আপনি দ্বিতীয় কাছাকাছি ফ্রেম দেব 123এর video.mp4হিসেবে সংরক্ষিত poster.jpg।
সমস্যাটি যেমন আপনি দেখতে পাচ্ছেন তা হ'ল আমাদের জানা দরকার যে দ্বিতীয়টি ঠিক।
আমাদের নির্ভরতা কম রাখতে, আমরা এর জন্য এফএফএমপিগ নিজেই ব্যবহার করব:
# Get the time as h:m:s (non-padded)
l=$(ffmpeg -i video.mp4 2>&1 | grep Duration: | sed -r 's/\..*//;s/.*: //;s/0([0-9])/\1/g')
# Convert that into seconds
s=$((($(cut -f1 -d: <<< $l) * 60 + $(cut -f2 -d: <<< $l)) * 60 + $(cut -f3 -d: <<< $l)))
# Get frame at 25% as the thumbnail
ffmpeg -ss $((s / 4)) -y -i video.mp4 -r 1 -updatefirst 1 -frames 1 poster.jpg
ভিডিওর 25% একটি সাধারণ পছন্দ বলে মনে হয় তবে আপনি এটি 33% বা 50 %ও বানাতে পারেন।
এখানে এমন একটি স্ক্রিপ্ট রয়েছে যা এটি করে ।