আমি লিনাক্সের জন্য শেল স্ক্রিপ্ট লিখছি, ব্যাশ ব্যবহার করে, কোনও ভিডিও-ফাইলকে এমপি 4-তে অনুবাদ করতে। তার জন্য, আমি অডিওর avconv
সাথে ব্যবহার করছি libvorbis
।
আমার স্ক্রিপ্টের ভিতরে, ব্যবহারকারীর জন্য আমার একটি প্রশ্ন রয়েছে:
read -p "- Audio Quality [scale from -2 to 10] ? "
if [ -n "$REPLY" ] ; then
ABITRATE="-aq $REPLY"
fi
আমার "ABITRATE" স্ট্রিংটি চূড়ান্ত avconv
কমান্ড-লাইনে চলে যায় ।
তবে আমি ব্যবহারকারীকে কেবি (কিলোবিট) এর একটি মান দিয়ে সেই প্রশ্নের উত্তর দেওয়ার এবং এটি যে স্কেল libvorbis
ব্যবহার করে তা অনুবাদ করার সুযোগ দিতে চাই । "-২ থেকে 10" স্কেলটি হ'ল:
Quality Kbit/s Normalization
-----------------------------
-2 ~32 y
-1 ~48 y
0 ~64 y
1 ~80 y
2 ~96 y
3 ~112 y
4 ~128 n
5 ~160 n
6 ~192 n
7 ~224 n
8 ~256 n
9 ~320 n
10 ~500 n
আমি জানতে চাই কীভাবে আমার $ REPLY সংখ্যাটিতে রয়েছে কিনা তা পরীক্ষা করে দেখুন। উদাহরণস্বরূপ, আমি চাই আমার স্ক্রিপ্টটি এরকম কিছু করুন:
if [ $REPLY is a number between 1 and 32 ] ; then
REPLY="-2"
elif [ $REPLY is a number between 33 and 48 ] ; then
REPLY="-1"
fi
এটি কি সম্ভব (আমি 'হ্যাঁ অবশ্যই বলতে চাই, কঠিন হওয়া উচিত না' তবে আমি সিনট্যাক্সটি ব্যবহার করতে জানি না)?