DNFHD / DNxHR प्रारूप में ffmpeg के साथ एक वीडियो कैसे परिवर्तित करें?


12

मैं Cinelerra-cv के साथ काम करने के तरीके के बारे में एक ट्यूटोरियल का अनुसरण कर रहा हूं, बहुत शुरुआत में यह कहा गया था, कि Cinelerra के साथ काम करने में बहुत पहला कदम, जो भी वीडियो क्लिप है उसे dnxhd प्रारूप में बदलना है। यह सिर्फ कहा गया था, यह नहीं बताया कि यह कैसे करना है।

कुछ शोध के बाद, मुझे ffmpeg के बारे में पता चला, लेकिन मुझे पता नहीं है कि इसे dnxhd के संबंध में कैसे उपयोग किया जाए, मैं कम ज्ञान के साथ ffmpeg के बारे में इकट्ठा हुआ, मेरा अनुमान है कि यह कैसे करना है:

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

हालाँकि, यह काम नहीं करता है, और जिन उदाहरणों को मैंने dnxhd में ffmpeg के साथ परिवर्तित करने पर देखा है, मुझे समझ में नहीं आता है, उन्हें लगता है कि हर बार कुछ अलग-अलग टैग्स के बिना समझाए कि उनका उपयोग क्यों करना है।


1
deb-indus.org/tuto/ffmpeg-howto.htm#Encoding_VC-3 सुझाव हैffmpeg -i <input_file> -vcodec dnxhd -b <bitrate> -an output.mov
Rinzwind

धन्यवाद, मैंने इसे पहले देखा था और मैं ऐसा था: क्या मुझे एक बिटरेट निर्दिष्ट करना है और क्या इसमें कोई ध्वनि नहीं है (-न)? .... मेरा मतलब है कि केवल dnxhd videoclips के साथ Cinelerra में कोई काम हो सकता है जिसकी कोई आवाज़ नहीं है?
शार्क

1
-b <int> : Set video bitrate in bit/s ( default = 200k ).इसलिए मैं मान सकता हूं कि आपको एक बिटरेट जोड़ना होगा क्योंकि 200k एक वैध विकल्प नहीं है। लेकिन -anमैं छोड़
दूँगा

क्या बिटरेट स्रोत फ़ाइल या उस फ़ाइल पर निर्भर करता है जिसमें कोई कनवर्ट करना चाहता है? .... मेरा मतलब है कि अगर मैं सिर्फ 200 का उपयोग करने की कोशिश करूं तो यह काम कर सकता है?
शार्क

नहीं, आपको इस विशेष एनकोडर के लिए बिटरेट निर्दिष्ट करने की आवश्यकता है।
ललगन

जवाबों:


18

यह एक picky एनकोडर है, इसलिए आपको उचित मापदंडों का चयन करना होगा:

  • फ्रेम रेट
  • पिक्सेल प्रारूप / रंग स्थान
  • चौड़ाई x ऊंचाई / संकल्प / फ्रेम आकार
  • बिटरेट

मान्य मानों के लिए मान्य DNxHD पैरामीटर नीचे देखें ।


DNxHD उदाहरण

यह उदाहरण 1280x720 के पैमाने पर होगा, 30000/1001 (उर्फ "29.97") की एक फ्रेम दर चुनें, और वाईयूवी 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
  • यदि आपकी इनपुट फ़ाइल पहले से ही स्वीकृत मापदंडों में से कुछ के अनुरूप है, तो आपको उन्हें मैन्युअल रूप से घोषित करने की आवश्यकता नहीं है।

  • डीएनएक्सएचडी के लिए आउटपुट प्रारूप कंटेनर आमतौर पर एमएक्सएफ या एमओवी है।


DNxHR उदाहरण

DNxHR 2K, 4K, और 8K जैसे 1080p से बड़े प्रस्तावों के लिए है।

यदि आप DNxHR चाहते हैं तो -profile:vआउटपुट विकल्प जोड़ें , जैसे कि -profile:v dnxhr_hq

स्वीकृत मूल्य है: dnxhd, dnxhr_444, dnxhr_hqx, dnxhr_hq, dnxhr_sq, dnxhr_lb

  • DNxHR LB: dnxhr_lb- कम बैंडविड्थ। 8-बिट 4: 2: 2 ( yuv422p)। ऑफ़लाइन गुणवत्ता।
  • DNxHR SQ: dnxhr_sq- मानक गुणवत्ता। 8-बिट 4: 2: 2 ( yuv422p)। वितरण प्रारूप के लिए उपयुक्त है।
  • DNxHR मुख्यालय: dnxhr_hq- उच्च गुणवत्ता। 8-बिट 4: 2: 2 ( yuv422p)।
  • DNxHR HQX: dnxhr_hqx- उच्च गुणवत्ता। 10-बिट 4: 2: 2 ( yuv422p10le)। UHD / 4K प्रसारण-गुणवत्ता वितरण।
  • DNxHR 444: dnxhr_444- गुणवत्ता खत्म करना। 10-बिट 4: 4: 4 ( yuv444p10le)। सिनेमा-गुणवत्ता वितरण।

उपरोक्त सूची को DNxHR कोडेक से अनुकूलित किया गया था ।


मान्य DNxHD पैरामीटर

ffmpeg यदि आप गलत मान प्रदान करते हैं तो विफल हो जाएंगे, लेकिन यह स्वीकार की गई सूची प्रदान कर सकता है।

आप निम्नलिखित "डमी" कमांड के साथ सूची दिखा सकते हैं:

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

फ्रेम दर के बारे में महत्वपूर्ण नोट्स

  • फ़्रेम दर उस सूची से गायब है जो इस कमांड से उत्पन्न होती है। ffmpegनेत्रहीन इस एनकोडर के लिए किसी भी फ्रेम दर को स्वीकार करेंगे, और AVID सॉफ्टवेयर कथित तौर पर इसे (अपुष्ट) स्वीकार करेंगे, लेकिन डीएनएक्सएचडी बिटरेट को केवल विशिष्ट फ्रेम दरों से मेल खाना चाहिए। अधिकतम अनुकूलता के लिए मैंने केवल उचित बिटरेट / फ्रेम दर संयोजन का उपयोग करने की सिफारिश की। तो उचित बिट्रेट्स और पिक्सेल प्रारूपों को प्राप्त करने के लिए ऊपर दिए गए कमांड का उपयोग करें ffmpeg, और उचित फ्रेम दर के लिए AVID DNxHD प्रस्तावों या DNxHD श्वेत पत्र (पृष्ठ 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

प्रारूप फिल्टर का उपयोग करके एक उचित पिक्सेल प्रारूप चुनें । ऊपर DNxHD उदाहरण देखें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.