আমি কীভাবে ffmpeg দিয়ে একটি ভিডিও ক্রপ করতে পারি?


171

আমার কাছে স্ক্রিন রেকর্ডিংয়ের একটি এমপি 4 ফাইল রয়েছে যা আমার ক্রপ ডাউন করতে হবে। আমি অ্যাডোব প্রিমিয়ার বা ফাইনাল কাটের মতো ব্যয়বহুল সরঞ্জামগুলি ব্যবহার না করে কীভাবে এটি সম্পাদন করতে পারি? আমি পছন্দ করি ffmpegকারণ আমি এটি আগে ব্যবহার করেছি।

উত্তর:


263

cropফিল্টারটি ব্যবহার করুন :

ffmpeg -i in.mp4 -filter:v "crop=out_w:out_h:x:y" out.mp4

নিম্নলিখিত বিকল্পগুলি যেখানে:

  • out_w আউটপুট আয়তক্ষেত্রের প্রস্থ
  • out_h আউটপুট আয়তক্ষেত্রের উচ্চতা
  • xএবং yআউটপুট আয়তক্ষেত্রের উপরের বাম কোণটি নির্দিষ্ট করুন

আসল চিত্র

মূল চিত্র
আসল 320x240 চিত্র

উদাহরণ 1

80x60

অবস্থান থেকে (200, 100) শুরু করে একটি 80 × 60 বিভাগে কাটতে:

ffmpeg -i in.mp4 -filter:v "crop=80:60:200:100" -c:a copy out.mp4
  • এই উদাহরণটিতে অডিওটি অনুলিপি করা হয়েছে, সুতরাং পুনরায় এনকোডিং এড়ানো হবে।

উদাহরণ 2

নীচে ডান কোয়ার্টারে

নীচে ডান প্রান্তিকে ক্রপ করতে:

ffmpeg -i in.mp4 -filter:v "crop=in_w/2:in_h/2:in_w/2:in_h/2" -c:a copy out.mp4

এটি একই হিসাবে:

ffmpeg -i in.mp4 -filter:v "crop=320/2:240/2:320/2:240/2" -c:a copy out.mp4

যা একই:

ffmpeg -i in.mp4 -filter:v "crop=240:120:240:120" -c:a copy out.mp4
  • আপনি এই প্রথম উদাহরণে প্রদর্শিত in_wএবং in_hযেমন ইনপুট চিত্রের আকারটি উল্লেখ করতে পারেন । আউটপুট প্রস্থ এবং উচ্চতা এছাড়াও out_wএবং সঙ্গে ব্যবহার করা যেতে পারে out_h

উদাহরণ 3

উপরে থেকে 20 পিক্সেল এবং নীচে থেকে 20 পিক্সেল

উপরে থেকে 20 পিক্সেল এবং নীচে থেকে 20 টি পিক্সেল:

 ffmpeg -i in.mp4 -filter:v "crop=in_w:in_h-40" -c:a copy out.mp4
  • ফিল্টারটি স্বয়ংক্রিয়ভাবে ক্রপটিকে কেন্দ্র করবে xএবং yযদি এই উদাহরণে বাদ দেওয়া হয়।

পূর্বরূপ

আপনি একটি ক্রপ নিতে পারেন (হে হি) এবং এটির সাথে সরাসরি উপস্থাপনা করতে পারেন ffplay:

ffplay -i input -vf "crop=in_w:in_h-40"

এইভাবে আপনি এনকোড, দেখুন, পুনরাবৃত্তি না করে আপনার ক্রপিং পরীক্ষা এবং সামঞ্জস্য করতে পারেন।

নোট

  • crop ফিল্টার ডকুমেন্টেশন

  • আপনার বিল্ডের উপর নির্ভর করে এমপি 4 এর জন্য ডিফল্ট এনকোডার libx264(H.264 ভিডিও) বা mpeg4(MPEG-4 পার্ট 2 ভিডিও) রয়েছে ffmpeg। দেখুন H.264 ভিডিও এনকোডিং গাইড: FFmpeg উইকি আরও তথ্যের জন্য।

  • ক্রপিং এবং পুনরায় এনকোডিংয়ের পরিবর্তে প্লেব্যাকের উপরে ক্রপিং বিবেচনা করুন। যেকোন খেলোয়াড়ের পক্ষে এটি ব্যবহারযোগ্য with

  • প্রাচীন ffmpegব্যবহৃত তৈরী করে -croptop, -cropbottom, -cropleft, -croprightপরিবর্তে অপশন cropফিল্টার। যদি এটি আপনার ক্ষেত্রে হয় তবে একটি আধুনিক পানffmpeg । বিকাশ খুব সক্রিয় এবং অ্যান্টিক ব্যবহারের কোনও কারণ নেই।


2
এটি এখন 'অ্যাভকনভ' এর সাথে কাজ করে।
জোসে

আমার 1923x1080 আছে এবং 1920x1080 চাই। এটি আমি প্রশংসিত চেষ্টা করেছি: /Users/kukodajanos/Workspace/ffmpeg -i /Users/kukodajanos/Desktop/video_640x480-2.mp4 -filter:v "crop=1920:1080:0:0" -c:a copy /Users/kukodajanos/Desktop/video_640x480-4.mp4তবে আসল সিনেমাটি ফিরে এসেছে।
জ্যানোস

@ জোসে জেএফওয়াইআই অ্যাভকনভ লিবাভার অংশ - এফফেম্পের একটি
কাঁটাচালিকা

1
এই প্রযুক্তিটি (সঙ্গে উল্লেখ করতে মূল্য cropফিল্টার) ভিডিও পুনরায় এনকোড দেখুন stackoverflow.com/questions/33378548/... তোমার জন্য যদি পুনরায় এনকোডিং বিষয়
abernier

1
পুরানো -filter:vতারিখটিকে আরও আধুনিক ও টাইপ করা সহজ পরিবর্তন করতে সম্পাদিত -vf। চিয়ার্স!
বয়স্ক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.