FFMPEG का उपयोग करके MP4 को FLV परिवर्तित करना और गुणवत्ता का संरक्षण करना


26

Im ffmpeg का उपयोग करके मेरी flv फ़ाइलों को mp4 से iOS उपकरणों पर चलाने के लिए परिवर्तित करने की कोशिश कर रहा हूं, लेकिन परिवर्तित वीडियो में मूल की तुलना में बहुत खराब गुणवत्ता है।

यहाँ मैं उपयोग कमांड है:

ffmpeg -i input.flv -ar 22050 output.mp4

मैं वास्तव में सराहना करूँगा अगर कोई मुझे flv से mp4 रूपांतरण के लिए सबसे अच्छी सेटिंग्स प्रदान कर सकता है।

ffmpeg  flv  mp4 

जवाबों:


42

आपके FLV में उपयोग किए गए कोडक के आधार पर आप इसे एक mp4 कंटेनर में फिर से लपेटने के साथ दूर करने में सक्षम हो सकते हैं। आपको वीडियो H.264या ऑडियो की आवश्यकता होगी । आप अपने स्रोत फ़ाइल के साथ कुछ जानकारी पा सकते हैंMPEG4 simple profileAACffmpeg -i input.flv

मुझे यकीन नहीं है कि बस एच .264 / एमपीईजी 4 सिंपल + एएसी काफी अच्छा है या अगर कोडेक्स के लिए विशिष्ट विकल्प हैं जो समर्थित हैं। यह परीक्षण करना काफी आसान है:

प्रयोग करके देखें

ffmpeg -i input.flv -c copy -copyts output.mp4

-copytsहै copy timestampsयह ऑडियो सिंक में मदद मिलेगी।

यदि वह काम नहीं करता है, तो ऑडियो और वीडियो कोडेक्स को मजबूर करने का प्रयास करें। यह फ़ाइल को फिर से एनकोड करेगा:

ffmpeg -i input.flv -c:v libx264 -crf 23 -c:a libfaac -q:a 100 output.mp4

वीडियो की गुणवत्ता में सुधार करने के लिए, आप कम सीआरएफ मूल्य का उपयोग कर सकते हैं, उदाहरण के लिए 18 से नीचे कुछ भी। एक छोटी फ़ाइल प्राप्त करने के लिए, एक उच्च सीआरएफ का उपयोग करें, लेकिन ध्यान दें कि यह गुणवत्ता को नीचा दिखाएगा।

ऑडियो गुणवत्ता में सुधार करने के लिए, उच्च गुणवत्ता वाले मूल्य का उपयोग करें। FAAC के लिए, 100डिफ़ॉल्ट है।


यहाँ सवाल में सुझाए गए ffmpeg कमांड पर कुछ विचार हैं।

-arऑडियो नमूना दर को संदर्भित करता है। जब तक आप चीजों को बेहतर ढंग से नहीं समझेंगे, मैं इसके साथ खिलवाड़ नहीं करने की सलाह दूंगा। यदि आप ऑडियो एन्कोडिंग के साथ खेलना चाहते हैं, तो बिटरेट (जैसे -b:a 128k) को समायोजित करें और एनकोडर को चुनें कि उसके आधार पर क्या करना है।

यदि आप अंत में इस सड़क पर जा रहे हैं ...

सीडी की गुणवत्ता 44100Hz नमूना है; ठेठ वीडियो 48000Hz का उपयोग करता है।

आप ध्यान दें कि मूल प्रश्न के उदाहरण में २२०५०, १/२ सीडी गुणवत्ता नमूना दर है। यदि आप सीडी सामग्री को कम कर रहे हैं तो यह एक अच्छा विकल्प है। यदि आप 48KHz स्रोत से शुरू कर रहे हैं (जो आप शायद हैं; फिर से, यह वीडियो फ़ाइलों में 44100 से बहुत अधिक सामान्य है) इसके बजाय मैं 24Khz का उपयोग करूँगा। यह शायद ज्यादा मायने नहीं रखेगा, लेकिन यह थोड़ा बेहतर हो सकता है और रूपांतरण करने के लिए थोड़ा कम सीपीयू का उपयोग कर सकता है।


मेरा जवाब फिर से पढ़ना ... ऊपर दी गई कमांड लाइन के अलावा, आप केवल वीडियो या केवल ऑडियो कॉपी कर सकते हैं, और दूसरे को फिर से एनकोड कर सकते हैं। उदाहरण के लिए ... "ffmpeg -i input.foo -vcodec copy -acodec libfaac -ab 128k -copyts output.mp4" यह वीडियो स्ट्रीम कॉपी करेगा और ऑडियो को AAC में फिर से एनकोड करेगा। libfaac में बढ़िया गुणवत्ता नहीं है लेकिन यह काम करता है।
दान प्रात: Dan

ऑडियो / वीडियो कोडेक्स मजबूर करने के बारे में: सितंबर 2019 तक, मैंने पाया कि इसके ffmpegलिए समर्थन बंद कर दियाlibaacयह प्रश्न या तो फ़्रेन्होफ़र एफडीके एएसी कोडेक के माध्यम सेffmpeg देशी एएसी एनकोडर का उपयोग करने का सुझाव देता है (जिसके लिए समर्थन के साथ संकलन की आवश्यकता होती है )। -c:a aac -c:a libfdk_aacffmpeglibfdk_aac
मेष राशि
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.