কীভাবে এফএফএমপিইগ ব্যবহার করে ভিডিও থেকে সাবটাইটেল উত্তোলন করা যায়?


34

আমি .srtফাইল হিসাবে ভিডিও থেকে সাবটাইটেল উত্তোলনের চেষ্টা করছি , আমি নিম্নলিখিত কমান্ডটি ব্যবহার করেছি:

FFMPEG -i mytestmovie.mkv -vn -an -codec:s:0.1 srt sub.srt

তবে, অজানা বিকল্প হিসাবে আমি একটি ত্রুটি পেয়েছি codec:s:0:1 সুতরাং, আপনি আমাকে সঠিক আদেশ এবং কীভাবে .srtভিডিওতে ফাইল হিসাবে একটি উপশিরোনাম বের করতে পারেন বলতে পারেন ?


উমাইর: আপনি আমাকে কমান্ড প্রম্পটে বলবেন
— বিজয়

আমি একই সমস্যা আছে। আপনি কি অবশেষে কাজ করতে পেরেছেন?
— ম্যাক্সিম লেবেল

উত্তর:


51

সরল:

ffmpeg -i Movie.mkv -map 0:s:0 subs.srt
  • -i : ইনপুট ফাইল ইউআরএল / পথ।
  • -ম্যাপ : আউটপুট ফাইলের উত্স হিসাবে এক বা একাধিক ইনপুট স্ট্রিম নির্ধারণ করুন।
  • s: 0 : সাবটাইটেল স্ট্রিমটি নির্বাচন করুন।

2
এটি এম্বেডেড সাবটাইটেল সহ একটি এমপি 4 ফাইল নিয়ে আমার জন্য কাজ করেছিল।
— রুবেন্স মারিজুজ্জো

11
এটি প্রথম সাবটাইটেল ট্র্যাকটি ডাউনলোড করবে। যদি বেশ কয়েকটি থাকে 0:s:1তবে দ্বিতীয়টি 0:s:2ডাউনলোড করতে, তৃতীয়টি ডাউনলোড করতে এবং আরও অনেক কিছু ব্যবহার করুন।
— ফ্যাবিয়েন স্নাউয়ার্ট

5
@ জেএম 3 আপনি কি কোনও ফাইল থেকে সমস্ত সাবটাইটেল স্ট্রিমগুলি স্বয়ংক্রিয়ভাবে তাদের ভাষা শনাক্তকরণের নামকরণের নামে নামকরণের কোনও উপায় জানতে পারবেন (যেমন, ইঞ্জি, ফ্রে, ডট ইত্যাদি)?
— Fr.

বড় এমকেভি কনটেইনার (~ 4 জিবি) থেকে নিষ্কাশন করার সময় কেন এত ধীর?
— ব্যবহারকারী 25

আরও একবারে সাবটাইটেলগুলি একবারে বের করতে আপনাকে -mapপ্রতিটি ফাইলের প্যারামিটারগুলি নকল করতে হবে। এছাড়াও অন্তর্ভুক্ত -c copyযাতে এটি শুধু এটি প্রক্রিয়া চেষ্টা ছাড়া ফাইল চায়ের: ffmpeg -i Movie.mkv -c copy -map 0:s:0 subs.01.srt -c copy -map 0:s:1 subs.02.srt। যাইহোক, এটি দীর্ঘ সময় নিতে পারে কারণ উপশিরোনামের স্ট্রিমগুলির সমস্ত অংশ খুঁজে পেতে ffmpeg অবশ্যই পুরো ভিডিও ফাইলটি পড়তে হবে।
— রাদেক পেচ

8

-codec:s:0:1ভুল. আপনি যদি ব্যবহার করেন -codec:s:0তবে ffmpeg প্রথম সাবটাইটেল স্ট্রিমটিকে আউটপুট এ যাওয়ার জন্য বর্ণিত কোডেক ব্যবহার করবে, যদি আপনি ব্যবহার করেন -codec:s:1তবে এটি এটি দ্বিতীয় উপশিরোনাম স্ট্রিম ইত্যাদির জন্য ব্যবহার করবে etc.

আপনি সমস্ত আউটপুট সাবটাইটেল স্ট্রিমগুলি নির্বাচন করতে বা তৃতীয় আউটপুট স্ট্রিমটি নির্বিশেষে তা চয়ন করতেও ব্যবহার -codec:sকরতে পারেন ।-codec:2

আপনি সম্ভবত বিভ্রান্ত হয়ে পড়েছেন কারণ -mapবিকল্পটি অন্যরকম আচরণ করে - সেখানে আপনাকে নির্বাচিত স্ট্রিমটি কোন ইনপুট থেকে আসে তা নির্বাচন করতে হবে। (সুতরাং, -map 0:s:0প্রথম ইনপুট থেকে প্রথম উপশিরোনামটি নিয়ে যাবে এবং আউটপুটটিতে এটি ফিড করবে)। যাইহোক, -mapআপনি ইনপুটগুলি থেকে কোন স্ট্রিমগুলি নিতে চান তা নির্বাচন করার জন্য; যদিও স্ট্র্যাপ ম্যাপিং ব্যবহার করা অন্যান্য অপশনগুলির বেশিরভাগগুলি নির্বাচিত হওয়ার পরে স্ট্রিমগুলিতে ব্যবহারের জন্য রয়েছে (সুতরাং আউটপুটে যাওয়ার পরে তারা কোন ইনপুট ফাইলটি রয়েছে তা নির্দিষ্ট করার দরকার নেই)।


অরিসপ: আমি নিম্নলিখিত কমান্ডটি ব্যবহার করব: \ FFMpeg_Lest> ffmpeg -i E: out রুটিন \ রুটিন.মেকভি -ভিএন-ম্যাপ 0: s: 0 srt E: E রুটিন \ sub.srt, এটি একটি ত্রুটি বলে মনে হচ্ছে i 'এসআরটি'র জন্য উপযুক্ত আউটপুট ফর্ম্যাটটি খুঁজে পেতে অক্ষম, আপনি কি আমাকে ভিডিওতে একটি সাবটাইটেল আহরণের জন্য আদেশ বলতে পারেন ...
— বিজয়

2
চেষ্টা করুন: ffmpeg -i E:\Routine\routine.mkv -map 0:s:0 E:\Routine\sub.srt(ffmpeg সনাক্ত করা উচিত যে আপনি আউটপুট ফাইলের নাম থেকে
— srt

আমি ব্যবহার করেছি: ffmpeg -i film.mp4 -vn -an -codec:s srt film.srtযে সমস্ত উপশিরোনাম srt ফাইলে অনুলিপি করা উচিত।
— স্টুয়ার্ট

@ স্টার্ট এটি সমস্ত উপশিরোনাম উত্তোলন করে না
— ব্যবহারকারীর 25

1
@ এভিলসপ -codec:sসমান -codec:s:0তাই এটি সমস্ত উপশিরোনাম নির্বাচন করে না ... এটি প্রথম পাঠ্য ট্র্যাকটি বের করবে
— ব্যবহারকারী 25
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.