ভিডিও রূপান্তর করার সময় আমি কীভাবে সাবটাইটেলগুলি যুক্ত করব এবং / অথবা রাখতে পারি?


16

আমার কাছে একটি এমকেভি ভিডিও রয়েছে যাতে আমি এমপি 4 এ রূপান্তর করতে চাই, তবে প্রতিটি উপায়ে চেষ্টা করে এটি রূপান্তর করতে চাই (হ্যান্ডব্রেক, উইনএফএফ, ffmpeg, মেনকোডার, ... আমি ভিডিওটির সাবটাইটেলগুলি হারিয়েছি I সাবটাইটেলগুলি রেখে, কীভাবে আমি ভিডিও রূপান্তর করতে পারি, বা একটি সাবটাইটেল যুক্ত করুন? srt?

আমি 4054 এর ভিডিও বিটরেট এবং 160 এর অডিও বিটরেট সহ 2 পাস এনকোডিংও চাই।

ধন্যবাদ।

আমাকে ffmpeg -i এর জন্য জিজ্ঞাসা করা হয়েছিল:

joe@joe-Leopard-Extreme:/media/Elements/Home Folder/Videos$ ffmpeg -i iron.mkv
ffmpeg version 0.8.3-4:0.8.3-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav     developers
built on Jun 12 2012 16:52:09 with gcc 4.6.3
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
[matroska,webm @ 0x1a319a0] Estimating duration from bitrate, this may be inaccurate
Input #0, matroska,webm, from 'iron.mkv':
Metadata:
title           : Iron 
Duration: 02:06:01.67, start: 0.000000, bitrate: 1280 kb/s
Chapter #0.0: start 0.000000, end 546.170622
Metadata:
  title           : Chapter 00
Chapter #0.1: start 546.170622, end 1080.579489
Metadata:
  title           : Chapter 01
Chapter #0.2: start 1080.579489, end 1609.941667
Metadata:
  title           : Chapter 02
Chapter #0.3: start 1609.941667, end 2101.849733
Metadata:
  title           : Chapter 03
Chapter #0.4: start 2101.849733, end 2595.259333
Metadata:
  title           : Chapter 04
Chapter #0.5: start 2595.259333, end 3158.488667
Metadata:
  title           : Chapter 05
Chapter #0.6: start 3158.488667, end 3564.644400
Metadata:
  title           : Chapter 06
Chapter #0.7: start 3564.644400, end 4052.423356
Metadata:
  title           : Chapter 07
Chapter #0.8: start 4052.423356, end 4304.300000
Metadata:
  title           : Chapter 08
Chapter #0.9: start 4304.300000, end 4711.206489
Metadata:
  title           : Chapter 09
Chapter #0.10: start 4711.206489, end 5080.575489
Metadata:
  title           : Chapter 10
Chapter #0.11: start 5080.575489, end 5700.111067
Metadata:
  title           : Chapter 11
Chapter #0.12: start 5700.111067, end 6269.346400
Metadata:
  title           : Chapter 12
Chapter #0.13: start 6269.346400, end 6811.471333
Metadata:
  title           : Chapter 13
Chapter #0.14: start 6811.471333, end 7561.679000
Metadata:
  title           : Chapter 14
Stream #0.0(eng): Video: h264 (High), yuv420p, 1920x1080 [PAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1k tbn, 47.95 tbc
Stream #0.1(eng): Audio: ac3, 48000 Hz, 5.1, s16, 640 kb/s (default)
Metadata:
  title           : 3/2+1
Stream #0.2(ita): Audio: ac3, 48000 Hz, 5.1, s16, 640 kb/s
Metadata:
  title           : 3/2+1
Stream #0.3(eng): Subtitle: pgssub (default)
Stream #0.4(eng): Subtitle: pgssub
Stream #0.5(eng): Subtitle: pgssub
Stream #0.6(eng): Subtitle: pgssub
At least one output file must be specified
joe@joe-Leopard-Extreme:/media/Elements/Home Folder/Videos

উত্তর:


19

Softsubs

এমপি 4 স্ট্রিমিং টেক্সট ফর্ম্যাট সাবটাইটেলগুলিকে সমর্থন করে তবে প্লেয়ার এবং ডিভাইসগুলির মধ্যে এর জন্য প্লেব্যাক সমর্থন সর্বজনীন নয়।

অডিও অনুলিপি করার সময় ডিফল্ট স্ট্রিম নির্বাচন আচরণ ব্যবহারের প্রাথমিক উদাহরণ :

ffmpeg -i input.mkv -c copy -c:s mov_text output.mp4

ভিডিও এবং অডিও স্ট্রিমের সমস্ত অনুলিপি করার উদাহরণ , সমস্ত পাঠ্য ভিত্তিক সাবটাইটেল ইনপুট স্ট্রিমগুলি (এসআরটি, এএসএস, ভিটিটি, ইত্যাদি) স্ট্রিমিং পাঠ্যের বিন্যাসে রূপান্তর করুন এবং প্রথম দুটি সাবটাইটেল স্ট্রিমের জন্য ভাষা সেট করুন।

ffmpeg -i input.mkv -map 0 -c copy -c:s mov_text -metadata:s:s:0 language=eng -metadata:s:s:1 language=ipk output.mp4

উপরের মতো একই তবে MP4 ধারকটির সাথে সামঞ্জস্যপূর্ণ ফর্ম্যাটগুলিতে ভিডিও এবং অডিওটিকে পুনরায় এনকোড করুন (এইচ .264 ভিডিও:

ffmpeg -i input.mkv -map 0 -c:v libx264 -c:a aac -c:s mov_text -metadata:s:s:0 language=eng -metadata:s:s:1 language=ipk output.mp4

উপরের মতো একই তবে -mapপ্রথম ভিডিও স্ট্রিম, দ্বিতীয় অডিও স্ট্রিম এবং তৃতীয় সাবটাইটেল স্ট্রিম বেছে নিতে বিকল্পটি ব্যবহার করুন :

ffmpeg -i input.mkv -map 0:v:0 -map 0:a:1 -map 0:s:2 -c:v libx264 -c:a aac -c:s mov_text -metadata:s:s:0 language=eng output.mp4

Hardsubs

পাঠ্য ভিত্তিক সাবটাইটেল ফর্ম্যাট ইনপুট

পাঠ্য ভিত্তিক সাবটাইটেল ফর্ম্যাটগুলি (এসআরটি, এএসএস, ভিটিটি, ইত্যাদি) "বার্ন-ইন" করতে সাবটাইটেল ফিল্টারটি ব্যবহার করুন । নোট করুন যে এর জন্য পুনরায় এনকোডিং দরকার, সুতরাং এটি সফটসব ব্যবহারের চেয়ে ধীরে ধীরে কমবে।

অডিও অনুলিপি করার সময় ডিফল্ট স্ট্রিম নির্বাচন আচরণ ব্যবহারের প্রাথমিক উদাহরণ :

ffmpeg -i input.mkv -filter_complex "subtitles=input.mkv" -c:a copy output.mp4

তৃতীয় ভিডিও স্ট্রিম, পঞ্চম সাবটাইটেল স্ট্রিম এবং প্রথম অডিও স্ট্রিম ব্যবহারের উদাহরণ:

ffmpeg -i input.mkv -filter_complex "[0:v:2]subtitles=input.mkv:si=4[v]" -map "[v]" -map 0:a:0 -c:a copy output.mp4

পৃথক সাবটাইটেল ইনপুট ফাইলের উদাহরণ ( your-subtitles-file.srt):

ffmpeg -i input.mp4 -filter_complex "subtitles=your-subtitles-file.srt" -c:a copy output.mp4

চিত্র ভিত্তিক সাবটাইটেল ফর্ম্যাট ইনপুট

ওভারলে ফিল্টার ব্যবহার করুন । এই উদাহরণটি দ্বিতীয় ভিডিও স্ট্রিমের উপরে চতুর্থ সাবটাইটেল স্ট্রিমটিকে ওভারলে করবে এবং সপ্তম অডিও স্ট্রিমের অনুলিপি করবে:

ffmpeg -i input.mkv -filter_complex "[0:v:2][0:s:3]overlay[v]" -map "[v]" -map 0:a:6 -c:a copy output.mp4

এছাড়াও দেখুন


এটি আমাকে কিছুটা বিভ্রান্ত করেছে। আপনি সম্পূর্ণ কমান্ড সরবরাহ করতে পারেন? হ্যাঁ, আমি একটি নির্দিষ্ট আউটপুট ফাইলের আকার লক্ষ্য করছি।
জোস্টেগার

@ জোস্টেটিগার আপনার ffmpeg -i input.mkvপ্রথমে কনসোল আউটপুট সরবরাহ করে আপনার প্রশ্নটি আপডেট করা উচিত ।
লগন

উপরেরটি কি আপনি বোঝাতে চেয়েছেন?
জো স্টেইগার

@ জোস্টেগার হ্যাঁ, এটি সহায়ক is
লোগান

কে, আমাকে পরবর্তী কী করতে হবে তা জানান।
জোস্টেগার

13

সমস্ত স্ট্রিম অনুলিপি করা হয়েছে তা নিশ্চিত করতে আপনি ম্যাপ 0 ব্যবহার করতে পারেন। যদি ফর্ম্যাটটি দিয়ে এটি সম্ভব না হয় তবে ffmpeg এর পরে ত্রুটি হওয়া উচিত।

-ম্যাপ 0 ffmpeg / libav কে সমস্ত স্ট্রিম অন্তর্ভুক্ত করতে বলে, কেবল সেগুলির জন্য নয় যা আপনি সংক্ষিপ্তকরণের নিয়মকে সংজ্ঞায়িত করেছেন।

সাধারণত-ম্যাপটি স্ট্রিম ম্যাপিং সংজ্ঞায়িত করতে ব্যবহৃত হয় - যেমন ইনপুটটিতে স্ট্রিম 1 আউটপুটটিতে স্ট্রিম 0 হওয়া উচিত। জাস্ট-ম্যাপ 0 দিয়ে আপনি ffmpeg / libav কে কোনও পরিবর্তন না করে সমস্ত স্ট্রিম নিতে বলে।


আপনি কি আরও কিছু ব্যাখ্যা করতে পারেন?
কাজ ওল্ফ

আমি আমার উত্তরটি সম্পাদনা করেছি
আর্নে

1

আপনি যদি এমপি 4 তে কেবল একটি সাধারণ রূপান্তর করতে চান তবে আপনি ভিএলসি ব্যবহার করতে পারেন। ভিএলসি একটি সাবটাইটেল ফাইল গ্রহণ করবে এবং আউটপুটটিতে রেন্ডার করবে।

সাবটাইটেল স্টাইলিং সহ আরও জটিল রূপান্তরগুলির জন্য, আপনি ওপেনশট ব্যবহার করতে পারেন।


-1

ভাল আমি এটি কার্যকর করার জন্য একটি উপায় খুঁজে পেয়েছি, আদর্শ নয়, তবে এটি কার্যকর হয়। আমি এমকেভিভার্স সহ একটি ভিডিওতে একটি এসআরটি যুক্ত করতে পারি। এমপিভি নয়, কেবল এমপিভিতে ভিডিওটিকে কেবল ক্ষতিগ্রস্থ করা হয়।

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