FFmpeg ব্যবহার করে H.265 কোডেক দিয়ে এমপি 4 কীভাবে তৈরি করবেন?


24

আমি H.265 এ একটি ভিডিও ফাইল এনকোড করতে চাই। Ffmpeg এর শেষ সংস্করণটি H.265 ( উত্স ) সমর্থন করা উচিত ।

তবে সঠিক কমান্ড সম্পর্কে আমি কোনও তথ্য খুঁজে পাইনি could

আমি জানি না, আমার পরে কোন লাইব্রেরিটি নির্দেশ করা উচিত -vcodec

আমি সর্বশেষতম জেরানো এফএফপিপেইগ বিল্ড (গিট-সি 78a416 (2013-10-26)) ব্যবহার করি।

উত্তর:


40

পটভূমি

এফএফম্পেগ লাইবক্স 265 এর সাথে 2014-212 থেকে এইচডিসি / এইচ .265 এনকোডিং সমর্থন করে। এখন আপনি এইচভিভিসি এনকোড করতে সরাসরি ffmpeg ব্যবহার করতে পারেন বা অন্য এনকোডার ব্যবহার করে ম্যানুয়ালি mx করতে পারেন যা .F4, .mov, বা .mkv এ FFmpeg ব্যবহার করে।

উপলভ্য এনকোডারস

বর্তমান এইচ .265 / এইচইভিসি এনকোডারগুলি হলেন:

কেবলমাত্র মাল্টিকোরওয়্যার এবং ডিভএক্স তাদের বিকাশের সময় এবং নির্ভরযোগ্যতার কারণে প্রস্তাবিত।

দুটি এক্স 265 এর

একটি বিভ্রান্তি হ'ল দুটি "এক্স 265" নামে দুটি স্বতন্ত্র প্রকল্প রয়েছে, একটি চীনা কলেজের শিক্ষার্থী এবং বাস্তবে মারা গিয়েছিল এবং অন্যটি মাল্টিকোরওয়্যার নামে একটি বাণিজ্যিক সংস্থার। যদিও প্রাক্তনটি প্রথম শুরু করেছিল, এটি এখন কার্যত মৃত, এবং পরবর্তীটি সক্রিয় বিকাশের অধীনে রয়েছে এবং ভিডিওএলএএন (x264 এর বিকাশকারী) এর দ্বারা অনুমোদিত হয়।

এফএফপিপেগ এইচভিসিসি এনকোডিং সমর্থনের টাইমলাইন

  • 2013-10-12 .মভ muxing সমর্থন যোগ করা হয়েছে 53f903b
  • 2014-02-12 libx265 এনকোডিং সমর্থন যুক্ত হয়েছে bb6b173
  • 2014-03-09 এইচইভিসির জন্য আরও সম্পূর্ণ মাতৃস্কা ম্যাক্সিং সমর্থন যুক্ত হয়েছে 38aee64
  • 2014-03-09 আরও সম্পূর্ণ .Mov এবং নতুন .mp4 ম্যাক্সিং সমর্থন যুক্ত হয়েছে 9563e67

TL; ড

যাইহোক, এগুলি আমার সুপারিশের ক্রম অনুযায়ী এইচডিসি এনকোডিংয়ের বর্তমান সম্ভাবনার সম্পূর্ণ সেট:

  • সরাসরি FFmpeg এর সাথে মাল্টিকোরওয়্যার libx265 ব্যবহার করা। এর অর্থ সর্বশেষতম জেরানো বিল্ড সহ আপনি এখন এটি করতে পারেন:

    ffmpeg -i INPUT -c:v libx265 -an -x265-params crf=25 OUT.mov
    # With audio
    ffmpeg -i INPUT -c:v libx265 -c:a copy -x265-params crf=25 OUT.mov
    

    দ্রষ্টব্য: এফএফম্পেগ 2014-03-09 এর তুলনায় আরও নতুন তৈরি করেছে আপনাকে এখন এমপি 4 ফাইলগুলিতে এইচভিভিসিকে ম্যাক্স করতে দেয় (9563e67 কমিট করুন):

    ffmpeg -i INPUT -c:v libx265 -an -x265-params crf=25 OUT.mp4
    

    আপনি ম্যাট্রোস্কায় (.mkv) এ এটি মিশ্রণ করতে পারেন:

    ffmpeg -i INPUT -c:v libx265 -an -x265-params crf=25 OUT.mkv
    
  • স্ট্যান্ডअ্যালোন মাল্টিকোরওয়্যার x265 এবং তারপরে এফএফপিপেগ বা এমপি 4বক্সের সাহায্যে ফলাফলটি ম্যাক্স করুন । এটি পুরানো FFmpeg বিল্ডগুলির সাথে কাজ করবে যেখানে libx265 সমর্থন নেই।

    # Decode input using FFmpeg and encode using x265 using pipe
    ffmpeg -i INPUT -f yuv4mpegpipe -pix_fmt yuv420p - | \
    x265 --y4m -o encoded.265 -
    
    # Mux the resulting encoded .265 file into an .mp4 or .mov
    
    # Using ffmpeg: only works with newer builds that support muxing HEVC
    # Muxing to .mp4 supported since 03-09-2014
    ffmpeg -i encoded.265 -c copy out.mp4
    # With audio
    ffmpeg -i encoded.265 -i INPUT -map 0 -map 1:a -c copy out.mp4
    
    # Using MP4Box
    MP4Box -add raw.265 out.mp4
    # With audio
    MP4Box -add {INPUT}#audio -add raw.265 out.mp4
    

    @ দুভ্রাইকে ধন্যবাদ।

  • ডিভএক্স এইচভিসি এনকোডার ব্যবহার করুন এবং তারপরে এটি ম্যাক্স করুন।

    এটি ব্যবহারের পদ্ধতিটি স্ট্যান্ডসোনল এক্স 265 ব্যবহার করার মতো (উপরে দেখুন)।

আপডেট: এফএফপিপিগের এখন মাল্টিকোরওয়্যার লাইবক্স 265 ব্যবহার করে এইচইভিসি এনকোডিং সমর্থন রয়েছে।

আপডেট 2: এফএফম্পেগের এখন এইচভিসিটি এমপি 4 এবং মুভিতে ম্যাক্স করার জন্য সমর্থন রয়েছে ।


1
crf=25উদাহরণ কমান্ডগুলিতে কী উপস্থাপন করে তা জানেন না তাদের জন্য , এখানে একটি সিআরএফ গাইড রয়েছে: slhck.info/articles/crf
প্রোগ্রামার

@ প্রোগ্রামারস্টারের মন্তব্যটি স্পষ্ট করতে, লিঙ্কটি একটি এক্স 2 guide৪ গাইডে চলেছে, তবে সিআরএফ নির্বাচনের ক্ষেত্রে x265 এবং x264 খুব মিল।
টিমোথি গু

আমি সিআরএফ-তে বিশেষভাবে h265 লক্ষ্য করে কোনও গাইড পাইনি তবে ধারণাটি ধ্রুব দেখাচ্ছে। আমি বর্তমানে এটির (17-28) প্রস্তাবিত মানগুলির সাথে পরীক্ষা করছি, তবে এইচ 265 এর জন্য কিছুটা আলাদা হওয়া দরকার কিনা তা জানি না।
প্রোগ্রামার

@ প্রোগ্রামার: হ্যাঁ এক্স 265 এর পরিসীমা 0-51 । তবে ডিফল্ট মান হল 28 পরিবর্তে 23
টিমোথি গু

2
সামগ্রিকভাবে দুর্দান্ত উত্তর, তবে একটি সমালোচনামূলক বিট নেই; -c:v libx265যেমনটি রয়েছে, x264 ব্যবহার করে উপরের উদাহরণগুলি। স্পষ্টতার জন্য, ffmpeg -i INPUT -c:a copy -x265-params crf=2 OUTPUT_h265.mp4x264 এর সাথে এনকোডিং ছিল, তবে ffmpeg -i INPUT -c:v libx265 -c:a copy -x265-params crf=2 OUTPUT_h265.mp4x265 দিয়ে এনকোড করা হয়েছিল।
রেনবাববা

18

ffmpeg 12 ফেব্রুয়ারী 2014 এ x265 এনকোডিং যুক্ত করেছে এবং এমপি 4 ধারক সমর্থন 9 ই মার্চ:

ffmpeg -i input -c:v libx265 -c:a copy output.mp4

বিঃদ্রঃ:

  • উপরের কমান্ডটি অডিওটিকে মূল কোডে কপি করবে। যদি এটি কাজ না করে, বাদ দ্বারা এএসি অডিও রূপান্তর -c:a copy(অথবা প্রতিস্থাপন copyসঙ্গে aac, libfdk_aacবা libfaac- আদেশ মানের ভিত্তিক)
  • ffmpeg ব্যবহার সংকলন করার সময় --enable-libx265(এবং --enable-libfdk-aacবা --enable-libfaacপ্রয়োজন হলে)

1
এফএফম্পেগ 3-9-2014 সাল থেকে এমপিথায় মূলত এমএইচভিসি ম্যাক্সিং সমর্থন করে।
টিমোথি গু

1
কোনও কারণে ফলাফলটি সবুজ এবং গোলাপী ছিল, তবে আমি যখন এর -pix_fmt yuv420pআগে যুক্ত করেছি -c:v, ফলাফলটি ভাল ছিল।
এভেজেনি সার্জিভ

-2

বর্তমান ডিভক্স এনকোডারটি ব্যবহার করে দেখুন। এটি h265 এর সমর্থন তৈরি করেছে: http://www.divx.com/

(হিসাবে রিপোর্ট http://jkdigital.de/h265-hevc-divx-praxisbericht/ )


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