কীভাবে একটি ভিডিওকে এফএফপিপেগকে DNxHD / DNxHR ফর্ম্যাটে রূপান্তর করতে?


12

আমি চলচ্চিত্রের-সিভির সাথে কীভাবে কাজ করব তার একটি টিউটোরিয়াল অনুসরণ করছি, খুব প্রথম দিকে বলা হয়েছিল, সিনেমাটির সাথে কাজ করার প্রথম ধাপটি হ'ল যে কোনও ভিডিও ক্লিপকে ডিএনএক্সএইচডি ফর্ম্যাটে রূপান্তর করা। এটি কেবল বলা হয়েছিল, এটি কীভাবে করবেন তা ব্যাখ্যা করা হয়নি।

কিছু গবেষণার পরে, আমি ffmpeg জুড়ে এসেছি, তবে dnxhd সম্পর্কিত ক্ষেত্রে এটি কীভাবে ব্যবহার করতে হবে সে সম্পর্কে আমার কোনও ধারণা নেই, ffmpeg সম্পর্কে আমি যে সামান্য জ্ঞান সংগ্রহ করেছি, এটি কীভাবে করা যায় তা আমার অনুমান:

ffmpeg -i <video-clip> -vcodec dnxhd <video-clip-in-dnxhd>

তবে এটি কার্যকর হয় না, এবং ffmpeg দিয়ে dnxhd রূপান্তর করার জন্য আমি যে উদাহরণগুলি দেখেছি তা আমি বুঝতে পারি না, তারা কেন ব্যবহার করবেন তা ব্যাখ্যা না করে প্রতিবারই কিছু আলাদা ট্যাগ লাগছিল।


1
deb-indus.org/tuto/ffmpeg-howto.htm# এনকোডিং_ভিসিসি 3 পরামর্শ দেবেffmpeg -i <input_file> -vcodec dnxhd -b <bitrate> -an output.mov
রিনজউইন্ড

ধন্যবাদ, আমি এটি আগেও দেখেছি এবং আমি এর মতো ছিলাম: আমাকে কি একটি বিটরেট নির্দিষ্ট করতে হবে এবং এর কোনও শব্দ নেই (-আন)? .... আমি বলতে চাইছি যে কেবলমাত্র কোন সিনেমাটারে ডিএনএক্সএইচডি ভিডিওোক্লিপগুলির সাথে কাজ করতে পারে যার কোনও শব্দ নেই?
শারকান্ত

1
-b <int> : Set video bitrate in bit/s ( default = 200k ).সুতরাং আমি ধরে নিচ্ছি আপনাকে অবশ্যই একটি বিটরেট যুক্ত করতে হবে যেহেতু 200k কোনও বৈধ বিকল্প নয়। তবে -anআমি বাদ দেব :)
রিনজউইন্ড

বিটরেট কি উত্স ফাইল বা যে ফাইলটিতে রূপান্তর করতে চায় তার উপর নির্ভর করে? .... মানে আমি যদি 200 টি ব্যবহার করার চেষ্টা করি তবে এটি কাজ করতে পারে?
শারকান্ত

না। আপনাকে এই নির্দিষ্ট এনকোডারটির জন্য বিটরেট নির্দিষ্ট করতে হবে।
লগন

উত্তর:


18

এটি একটি পিক এনকোডার তাই আপনাকে যথাযথ প্যারামিটারগুলি সহ চয়ন করতে হবে:

  • চক্রের হার
  • পিক্সেল বিন্যাস / রঙ স্থান
  • প্রস্থ এক্স উচ্চতা / রেজোলিউশন / ফ্রেম আকার
  • বিটরেট

দেখুন বৈধ DNxHD পরামিতি গ্রহণ মানের জন্য কম।


DNxHD উদাহরণ

এই উদাহরণটি 1280x720 এ স্কেল করবে, 30000/1001 (ওরফে "29.97") এর ফ্রেম রেট এবং YUV 4: 2: 2 প্ল্যানারের পিক্সেল ফর্ম্যাটটি চয়ন করবে।

ffmpeg -i input -c:v dnxhd -vf "scale=1280:720,fps=30000/1001,format=yuv422p" -b:v 110M -c:a pcm_s16le output.mov
  • যদি আপনার ইনপুট ফাইলটি ইতিমধ্যে গ্রহণযোগ্য কিছু প্যারামিটারের সাথে সামঞ্জস্য করে তবে আপনাকে সেগুলি ম্যানুয়ালি ঘোষণা করতে হবে না।

  • DNxHD এর আউটপুট ফর্ম্যাট ধারক সাধারণত এমএক্সএফ বা এমওভি হয়।


DNxHR উদাহরণ

DNxHR হল 1080p এর চেয়ে বড় রেজোলিউশনের জন্য যেমন 2K, 4K এবং 8K।

আপনি যদি ডিএনএক্সএইচআর চান তবে -profile:vআউটপুট বিকল্প যুক্ত করুন, যেমন -profile:v dnxhr_hq

গৃহীত মান হল: dnxhd, dnxhr_444, dnxhr_hqx, dnxhr_hq, dnxhr_sq, dnxhr_lb

  • ডিএনএক্সএইচআর এলবি: dnxhr_lb- লো ব্যান্ডউইথ। 8-বিট 4: 2: 2 ( yuv422p)। অফলাইন গুণমান।
  • DNxHR SQ: dnxhr_sq- মানক মানের। 8-বিট 4: 2: 2 ( yuv422p)। বিতরণ বিন্যাস জন্য উপযুক্ত।
  • ডিএনএক্সএইচআর এইচকিউ: dnxhr_hq- উচ্চমানের। 8-বিট 4: 2: 2 ( yuv422p)।
  • ডিএনএক্সএইচআর এইচকিউএক্স: dnxhr_hqx- উচ্চমানের। 10-বিট 4: 2: 2 ( yuv422p10le)। ইউএইচডি / 4 কে ব্রডকাস্ট-মানের বিতরণ।
  • DNxHR 444: dnxhr_444- গুণমান সমাপ্তি। 10-বিট 4: 4: 4 ( yuv444p10le)। সিনেমা-মানের বিতরণ।

উপরের তালিকাটি ডিএনএক্সএইচআর কোডেক থেকে গৃহীত হয়েছিল ।


বৈধ DNxHD পরামিতি

ffmpeg আপনি যদি ভুল মান সরবরাহ করেন তবে ব্যর্থ হবে, তবে এটি গ্রহণযোগ্যতার একটি তালিকা সরবরাহ করতে পারে।

আপনি নিম্নলিখিত "ডামি" কমান্ডের সাথে তালিকাটি প্রদর্শন করতে পারেন:

ffmpeg -f lavfi -i testsrc2 -c:v dnxhd -f null -

ফ্রেম রেট সম্পর্কে গুরুত্বপূর্ণ নোট

  • এই আদেশ থেকে উত্পন্ন উত্পন্ন তালিকা থেকে ফ্রেম রেট অনুপস্থিত। ffmpegএই এনকোডারটির জন্য কোনও ফ্রেম রেট অন্ধভাবে গ্রহণ করবে এবং এভিড সফ্টওয়্যার এটির (অযুদ্ধ) নিশ্চিত করবে তবে ডিএনএক্সএইচডি বিটরেট কেবল নির্দিষ্ট ফ্রেমের হারের সাথে মিলে যাবে বলে মনে করা হচ্ছে। সর্বাধিক সামঞ্জস্যের জন্য আমি কেবলমাত্র যথাযথ বিটরেট / ফ্রেম রেট সংমিশ্রণটি ব্যবহার করার পরামর্শ দিয়েছি। সুতরাং যথাযথ বিটরেটস এবং পিক্সেল ফর্ম্যাটগুলি গ্রহণযোগ্যতার জন্য উপরের কমান্ডটি ব্যবহার করুন ffmpeg, এবং যথাযথ ফ্রেমের হারের জন্য এভিড ডিএনএক্সএইচডি রেজোলিউশনগুলির তালিকা বা ডিএনএক্সএইচডি হোয়াইট পেপারের (পৃষ্ঠা 9) সাথে ক্রস রেফারেন্স করুন ।

  • উপরের লিঙ্কগুলিতে তালিকাভুক্ত ফ্রেম রেটগুলি নির্ভুল গোলাকার আনুমানিক ব্যবহার করছে। সঠিক মান নীচে তালিকাভুক্ত করা হয়; সংক্ষিপ্ত নামটি বামে এবং সঠিক মানটি ডানদিকে।

    • 29.97 = 30000/1001 (বা উপনামটি ব্যবহার করুন ntsc)
    • 59.94 = 60000/1001
    • 23.967 = 24000/1001 (অথবা উপনামটি ব্যবহার করুন ntsc-film)

আরও বিকল্প

অতিরিক্ত এনকোডার নির্দিষ্ট বিকল্পগুলির জন্য এবং সমর্থিত পিক্সেল ফর্ম্যাটগুলির একটি তালিকা দেখুন:

ffmpeg -h encoder=dnxhd

ত্রুটি

ff_frame_thread_encoder_init failed
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Conversion failed!

এর অর্থ হল আপনার ফ্রেমের হার, প্রস্থ, উচ্চতা, পিক্সেল ফর্ম্যাট এবং / অথবা বিটরেট ভুল। পড়ুন বৈধ DNxHD পরামিতি গ্রহণ মানের জন্য উপরে।

pixel format is incompatible with DNxHD profile

ফর্ম্যাট ফিল্টারটি ব্যবহার করে একটি সঠিক পিক্সেল বিন্যাস চয়ন করুন । উপরের ডিএনএক্সএইচডি উদাহরণটি দেখুন।

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