একই মানের সাথে এফএফএমপিইগ স্প্লিটিং এমপি 4


51

আমার কাছে একটি বড় এমপি 4 ফাইল রয়েছে। আমি এটিকে ছোট ফাইলগুলিতে বিভক্ত করার চেষ্টা করছি।

ffmpeg -i largefile.mp4 -sameq -ss 00:00:00 -t 00:50:00 smallfile.mp4

আমি ভেবেছিলাম -সেমেক ব্যবহার করা একই মানের সেটিংস রাখবে। যাইহোক, আমি অবশ্যই বুঝতে পারি না এটি কী করে।

আমি একই মানের (অডিও / ভিডিও) এবং বিভক্ত ফাইলগুলির সাথে সংকোচন রাখতে চাইছি। তবে এই সেটিংটি স্প্লিট ফাইলগুলিকে অনেক বড় করে তোলে।

একই মানের থেকে আকারের অনুপাত বজায় রেখে বিভক্ত ফাইলগুলিতে একই গুণমান এবং বৈশিষ্ট্যগুলি রাখার জন্য আমার কোন পতাকা (গুলি) স্থাপন করতে হবে?

উদাহরণস্বরূপ, যদি আমার আসল ফাইলটি প্রায় 12 জিবি এবং 10617 কেবিপিএসের বিটরেট সহ 1920x1080 হয় এবং ২৩ ফ্রেম / সেকেন্ডের ফ্রেমরেট এবং ৩77 কেবিপিএস সহ channel টি চ্যানেল অডিও, আমি চাই যে বিভক্ত ফাইলগুলি এই আকারের এক তৃতীয়াংশ হবে ( যদি আমি এটিকে তিন টুকরো করে ভাগ করি)।


3
যে কেউ এটি পড়ার জন্য এফওয়াইআই: ব্যবহার করবেন না -sameq, এর অর্থ "একই মানের" নয়
জাজ

উত্তর:


81

আপনি যদি ভিডিওটি পুনরায়-এনকোড না করে কেবল বিভক্ত করতে চান তবে copyঅডিও এবং ভিডিওর জন্য কোডেক ব্যবহার করুন । এটা চেষ্টা কর:

ffmpeg -ss 00:00:00 -t 00:50:00 -i largefile.mp4 -acodec copy \
-vcodec copy smallfile.mp4

মনে রাখবেন এটি কেবল প্রথম বিভাজন তৈরি করে। পরেরটি একটি কমান্ড দিয়ে শুরু করা যেতে পারে ffmpeg -ss 00:50:00

এটি একটি একক আদেশ দ্বারা করা যেতে পারে:

ffmpeg -i largefile.mp4 -t 00:50:00 -c copy smallfile1.mp4 -ss 00:50:00 -c copy smallfile2.mp4

এটি smallfile1.mp4 তৈরি করবে, যা 50 মিনিটে লার্জফিল.এমপি 4 এর ভিডিওতে শুরু হবে এবং স্মার্টফিল 2. এমপি 4, 50 মিনিটের শুরু থেকে লার্জফিল.এমপি 4 এর শেষে শেষ হবে।


2
এমপি 4 ফাইলে এই পদ্ধতিটি ব্যবহার করে, আমি প্রতিটি তৈরি ফাইলের প্রথম দুই সেকেন্ডকে হিমায়িত ফ্রেম হিসাবে পাই (অডিওটি সাধারণত খেলায়)। এর কোন পরিচিত কারণ?
রন হারলেভ

বাগের মতো শোনাচ্ছে। সর্বশেষ ffmpeg আপডেট করুন।
রবার্ট

@ রবার্ট আমি ২০১০ সাল থেকে অনেকবার আপডেট করেছি Thanks ধন্যবাদ।
ফিদেলি

@ রোনহরলেভ এটি বর্তমানে প্রত্যাশিত আচরণ। পুনরায় এনকোডিং ছাড়াই আপনি কেবল "কী ফ্রেমে" ভিডিও কাটতে পারেন। কী ফ্রেমগুলির মধ্যে থাকা ফ্রেমগুলি একটি সম্পূর্ণ চিত্র তৈরি করতে তাদের নিজস্ব পর্যাপ্ত তথ্য বহন করে না। দেখুন: trac.ffmpeg.org/wiki/Seeking# সিকিংহিল্ডিংয়েডিংকোডেকোপি
ফিলিপ থ্রেশার

3

এটি করার একটি বিকল্প উপায় হ'ল:

// create a 2-min clip
ffmpeg -i input.mp4 -ss 00:10:00 -to 00:12:00 -c copy output.mp4

/**
* -i  input file
* -ss start time in seconds or in hh:mm:ss
* -to end time in seconds or in hh:mm:ss
* -c codec to use 
*/

ফাইলের গুণমান একই থাকে কারণ আমরা -c copyআউটপুটে আসল অডিও + ভিডিও স্ট্রিমগুলি অনুলিপি করতে ব্যবহার করি ।

রেফারেন্স, সাধারণত ব্যবহৃত FFmpeg কমান্ডগুলির তালিকা: ডিজিটালফোর্ট্রেস

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