ঠিক আছে. আমরা মাত্র কয়েক সপ্তাহ আগে শিখেছি কিভাবে ভিডিওর আকার পরিবর্তন করতে VirtualDub ফিল্টার ব্যবহার করতে হয়। বিশুদ্ধভাবে নান্দনিক প্রয়োজন এবং আপনার আউটপুট মিডিয়াকে ছোট করার ইচ্ছা ছাড়াও, ভিডিওগুলির আকার পরিবর্তন করা তেমন গুরুত্বপূর্ণ বলে মনে হতে পারে না। কিন্তু আপনার যদি খুব বিশেষ প্রয়োজন থাকে, যেমন বুলেট-টাইম স্লো-মোশন ভিডিও তৈরি করা, এবং যে সফ্টওয়্যারটির জন্য নির্দিষ্ট ফর্ম্যাট এবং আকারের প্রয়োজন হয় তা হলে কী হবে?
চিন্তার কিছু নেই, আমরা শেষ টিউটোরিয়ালে সেই বাধা অতিক্রম করেছি। আর আজকে আমি আপনাদের দেখাবো কিভাবে স্লো মোশন ভিডিও বানাতে হয়। ভার্চুয়ালডাব আছে। এবং আমরা AviSynth নামে আরেকটি সুদর্শন প্রোগ্রাম জানতে পারব। এই প্রোগ্রামটি ভিডিও পোস্ট-প্রোডাকশনের জন্য একটি শক্তিশালী ইউটিলিটি। এটির কোন ফ্রন্টএন্ড নেই, যার মানে আপনাকে কমান্ড-লাইন এবং স্ক্রিপ্টগুলির জন্য স্থির হতে হবে। ওহ, ভীতিজনক শোনাচ্ছে, কিন্তু চিন্তা করবেন না, আমি এটি সহজ করে দেব।
AviSynth, ইনস্টলেশন, প্রস্তুতি, কনফিগারেশন
আমরা VirtualDub ব্যবহার শুরু করার আগে, আমাদের AviSynth কনফিগার করতে হবে। ডাউনলোড এবং ইনস্টল করুন, মোটামুটি সহজ. কিন্তু আমাদের mvtools নামে একটি অতিরিক্ত প্লাগইন দরকার যা মৌলিক প্যাকেজের সাথে উপলব্ধ নয়। এটি হয়ে গেলে, আপনি AviSynth ব্যবহার করতে প্রস্তুত।
AviSynth ব্যবহার করা
কোন ফ্রন্টএন্ড (GUI), পাতলা করার কোন অভিনব বা সহজ উপায় নেই। তবুও, আপনাকে কমান্ড লাইন থেকে ভয় পাওয়ার দরকার নেই। একটি টেক্সট এডিটর খুলুন এবং কমান্ড লিখতে শুরু করুন - অথবা ওয়েবে প্রস্তুত স্ক্রিপ্টগুলি খুঁজুন এবং সেগুলিকে অনুলিপি করুন৷ আমি কোনও বিশেষজ্ঞ নই, তবে আমি কোড পড়তে পারি এবং আমার পথে গুগল করতে পারি৷
আমি Nerds সেন্ট্রাল এ স্লো-মোশন স্ক্রিপ্ট খুঁজে পেয়েছি এবং এটি আমার নিজের ব্যবহারে অভিযোজিত করেছি। লেখক স্ক্রিপ্টটি কী করে তা বিশদভাবে ব্যাখ্যা করেছেন, তাই কমান্ডগুলির মধ্য দিয়ে যাওয়া এবং একে একে ব্যাখ্যা করার সামান্য বিন্দু নেই। শুধু মনে রাখবেন, AviSynth হল একটি ডি-ফ্যাক্টো প্রোগ্রামিং ভাষা যার নিজস্ব সিনট্যাক্স রয়েছে। আপনি যদি একটি জানেন, আপনি তাদের সব জানেন.
এখানে আমার কাজ, মূলত উপরের উদাহরণের সাথে অভিন্ন:
লোডপ্লাগইন ("mvtools.dll-এর পথ")
source=AVISsource("পাথ to source.avi",false)
oSource=উৎস
উৎস=ConvertToYV12(উৎস)
উৎস=অ্যাসুমএফপিএস(উৎস,25)
backward_vec=source.MVAnalyse(isb=true,truemotion=true,pel=2,idx=1)
forward_vec=source.MVAnalyse(isb=false,truemotion=true,pel=2,idx=1)
Cropped=source.crop(4,4,-4,-4) # ব্লক সাইজ 8 এর অর্ধেক দ্বারা
backward_vec2=cropped.MVAnalyse(isb=true,truemotion=true,pel=2,idx=2)
forward_vec2=cropped.MVAnalyse(isb=false,truemotion=true,pel=2,idx=2)
fSource=source.MVFlowFps2(backward_vec,forward_vec,
backward_vec2,forward_vec2,num=250,idx=1,idx2=2)
fSource=AssumeFPS(fSource,25)
ফেরত fsource
যাইহোক, কয়েকটি পয়েন্টার, যা আপনার মনোযোগ দাবি করে:
আপনাকে আপনার mvtools.dll এবং সোর্স ফাইলটি সঠিকভাবে নির্দেশ করতে হবে। দ্বিতীয়ত, উৎসকে YV12 ফরম্যাটে রূপান্তর করার নির্দেশনা রয়েছে। আপনার ফাইলটি ইতিমধ্যেই সঠিক বিন্যাসে থাকলে আপনি এই লাইনটি সম্পাদনা করতে পারেন - অথবা VirtualDub ব্যবহার করুন৷
source=ConvertToYV12(উৎস)
আপনি কিভাবে জানেন এই YV12 জিনিস কি? বা কেন আপনি এটা প্রয়োজন? উত্তর হল, আপনার সত্যিই এটির প্রয়োজন নেই, তবে ভিডিও প্রক্রিয়াকরণের জন্য এটি ভাল। আপনাকে মুগ্ধ করতে হবে এমন মজার পরিভাষায়, YV12 হল একটি প্ল্যানার ফর্ম্যাট, যার অর্থ হল প্রতিটি ছবির জন্য, সমস্ত পিক্সেলের লুমা ডেটা ধারাবাহিকভাবে সংরক্ষণ করা হয়, তারপরে ক্রোমা ডেটা, যা চিত্র প্রক্রিয়াকরণ কৌশলগুলির জন্য আদর্শ। এখন, এই শেষ বাক্যটি ভুলে যান।
যাইহোক, আরও তথ্যের জন্য কোন ফর্ম্যাটগুলি YV12 সমর্থন করে, AviSynth FAQ হল আপনার বন্ধু৷ সাধারণ শর্তে, XviD সহ MPEG-4 ঠিক কাজ করা উচিত।
আপনি যদি কোনো কারণে এটি ভুল পান, আপনি ভার্চুয়ালডুবে স্ক্রিপ্টটি লোড করার চেষ্টা করার সময় এই ত্রুটিটি পাবেন - আপনি কীভাবে এটি ঠিক করেন, আমরা অল্প সময়ের মধ্যে দেখতে পাব:
পরবর্তী, উৎসের জন্য অনুমানএফপিএস। সঠিক ফ্রেমরেট সেট করা অনুমান ছাড়াই সেরা আউটপুট তৈরি করতে সহায়তা করে। এটি আপনাকে ফ্রেমরেট উপরে এবং নিচে টুইক করার বিভিন্ন পুনরাবৃত্তির মধ্য দিয়ে যেতে না করে আপনার প্রত্যাশা অনুযায়ী আউটপুট ভিডিও তৈরি করতে সহায়তা করবে।
ক্রপিং
এটি একটি চতুর এক. যদি আপনার কাছে এমন একটি ভিডিও ফাইল থাকে যার প্রস্থ চার দ্বারা বিভাজ্য নয়, আপনি স্ক্রিপ্টটি লোড করার চেষ্টা করার সময় ভার্চুয়ালডুব থেকে একটি ত্রুটি পাবেন, এই গাণিতিক বিষয় সম্পর্কে অভিযোগ:
আপনি আপনার স্ক্রিপ্টে ক্রপ করা প্যারামিটার লাইনটি মন্তব্য করার সিদ্ধান্ত নিতে পারেন, যা কাজ করতে পারে, তবে নিশ্চিত করুন যে আপনার স্ক্রিপ্টের যুক্তি পরিবর্তিত হয়েছে, যাতে আপনি কোনো অনির্ধারিত ভেরিয়েবলের সাথে শেষ না হন:
তবে আরও ভাল, রিসাইজ ফিল্টার ব্যবহার করে VirtualDub-এ আপনার ভিডিওর আকার পরিবর্তন করুন! যা আমরা শেষবার শিখেছি ঠিক কী! এখন আপনি জানেন কেন আমরা এটা করেছি।
MVFlowFPS2 প্যারামিটার নির্ধারণ করবে আপনার স্লোড-ডাউন ভিডিওতে কতগুলি ফ্রেম থাকবে, তবে, প্রকৃত মন্থরতা নির্ভর করে আউটপুট ফ্রেমরেটের উপর। প্রকৃতপক্ষে, অবশেষে, আউটপুট AssumeFPS-এ মনোযোগ দিন, কারণ এটি শেষ পর্যন্ত নির্ধারণ করবে যে আপনার ভিডিও কতটা দ্রুত বা ধীর হবে, এর দৈর্ঘ্য এবং আকার সহ। আপনি এই প্যারামিটারের সাথে যতটা খুশি খেলতে পারেন, কী সেরা ফলাফল দেয় তা দেখতে।
fSource=AssumeFPS(fSource,25)
VirtualDub এ স্ক্রিপ্ট লোড করুন
প্রকৃতপক্ষে, উপরে দেখানো ত্রুটিগুলির কোনোটিই দেখাবে না, যতক্ষণ না আপনি .avs এক্সটেনশনের সাহায্যে আপনার টেক্সট ফাইলটিকে স্ক্রিপ্ট হিসেবে সংরক্ষণ করেন এবং VirtualDub-এ খুলবেন, যেমন আপনি অন্য কোনো ফাইল খুলবেন। আপনি যদি কোন ত্রুটি না করেন, ভিডিওটি লোড হবে, ফ্রেম সন্নিবেশের একটি নির্দিষ্ট ফ্যাক্টর সহ। উপরের উদাহরণটি আপনাকে x10 ফ্যাক্টর দেয়, কিন্তু আপনি x2, x5 ইত্যাদি পরিবর্তন করতে যেকোন সংখ্যক FPS দিয়ে কাজ করতে পারেন।
শেষ ফলাফল
AviSynth এর সাথে আমার কাজের চূড়ান্ত কাট ইউটিউবে উপলব্ধ। লিঙ্ক এক এবং দুই. তাই অনুগ্রহ করে আমার কাজের মান পরীক্ষা করে দেখুন। আপনি অভ্যন্তরীণ ডিজাইন গ্যালারীতে আগ্রহী হতে পারেন যা এই ভিডিওগুলিকে বৈশিষ্ট্যযুক্ত করে৷
আপনি লক্ষ্য করবেন যে ফ্রেমের মধ্যে ইন্টারপোলেশনের কারণে ভিডিওর প্রান্তে কিছু অস্পষ্টতা রয়েছে। আসল রেকর্ডিংটি ছিল একক ক্যামেরা ফ্রেমের একটি সংগ্রহ, প্রতি সেকেন্ডে 25 ফ্রেমে পুনরায় নমুনা করা হয়েছে, তারপর দশবার ধীর করা হয়েছে। তাই আপনি প্রায় ফাঁক পূরণ সফ্টওয়্যার আছে. ফ্রেমের মধ্যে 250 বার, যা একটি সহজ চুক্তি নয়। আপনি মোশন ভিডিওগুলির সাথে আরও ভাল ফলাফল পাবেন, যা ইতিমধ্যেই কিছু অস্পষ্টতা বৈশিষ্ট্যযুক্ত, এবং এই ক্ষেত্রে এটি প্রত্যাশিত।
তবে আমি মনে করি এটি একটি শালীন কাজ। আপনি এখন এটা কিভাবে করতে জানেন.
উপসংহার
আমরা সেখানে যাই, আরেকটি মাল্টিমিডিয়া টিউটোরিয়াল টুকরো টুকরো করে কাটা। এখন পর্যন্ত, আপনি একজন ভিডিও সোস-শেফ। একটি গুরুতর নোটে, ভার্চুয়ালডুব সমস্ত ধরণের ফিল্টার সহ মিডিয়া ফাইলগুলির সাথে কাজ করার জন্য একটি খুব শক্তিশালী এবং অত্যন্ত এক্সটেনসিবল টুল। AviSynth-এর সাথে একত্রিত হয়ে, আপনি চিত্তাকর্ষক ম্যাট্রিক্সের জন্য যেতে পারেন, অথবা আপনি যদি John Woo পছন্দ করেন, আপনার বাড়িতে তৈরি ভিডিওতে প্রভাব, আপনার প্রতিবেশী এবং কাজের সহকর্মীদের সেরা করে।
AviSynth সহজতম ইউটিলিটি নয়, কারণ এতে GUI এর অভাব রয়েছে, তবে এটি ভাল কাজ করে। শুধু মৌলিক স্তরযুক্ত পদ্ধতির মনে রাখবেন। প্রথম-স্তরের পরিবর্তন এবং সংশোধন এবং অতিরিক্ত প্রক্রিয়াকরণ এবং ট্রান্সকোডিংয়ের জন্য VirtualDub ব্যবহার করুন। পরবর্তী, অতিরিক্ত প্রভাব অর্জন করতে উপলব্ধ ফিল্টার ব্যবহার করুন. সবশেষে, চূড়ান্ত স্পর্শের জন্য থার্ড-পার্টি মডিউল ব্যবহার করুন। ভাল, যে সব হবে. আনন্দ কর.
চিয়ার্স।