FFmpeg में आउटपुट MP3 फ़ाइल का संस्करण कैसे सेट करें


0

मैं FFmpeg का उपयोग करके दो मोनो एमपी 3 फ़ाइलों में एक स्टीरियो एमपी 3 फाइल को विभाजित करना चाहता हूं, ताकि मोनो फ़ाइलों में से प्रत्येक एमपीईजी -1 लेयर 3 संस्करण 1:

मैं इस कमांड का उपयोग करता हूं:

ffmpeg -i input.mp3 -map_channel 0.0.0 left.mp3 -map_channel 0.0.1 right.mp3

इनपुट फ़ाइल MPEG-1 परत 3 संस्करण 1 है, लेकिन बाहर रखा गया MPEG-1 परत 3 संस्करण 2 हैं।


पहले, आपकी अंग्रेजी ठीक है! लेकिन सिर्फ एक स्पष्टीकरण: आप कहते हैं "एमपीईजी -1 संस्करण 1" और "एमपीईजी -1 संस्करण 2" लेकिन क्या आपका मतलब है "MPEG-1 ऑडियो लेयर I" और "MPEG-1 ऑडियो लेयर II?"
JakeGould

जवाबों:


2

आप इसे सेट नहीं कर सकते FFmpeg वांछित आउटपुट के आधार पर संस्करण को स्वचालित रूप से काटता है। किसी संस्करण को बाध्य करने के लिए, आपको उस संस्करण के साथ संगत विकल्पों का उपयोग करना होगा। इस लिंक को पढ़ें (नीचे उस पृष्ठ से परिचय) और सही संयोजन चुनें जो आपके आवेदन के लिए काम करता है।

एक एमपीईजी ऑडियो फ़ाइल के भीतर, एक एमपीईजी ऑडियो के रूप में कोई मुख्य शीर्षक नहीं है   फ़ाइल को छोटे भागों के उत्तराधिकार से निर्मित किया जाता है   फ्रेम। प्रत्येक फ्रेम अपने स्वयं के हेडर और ऑडियो के साथ एक डाटाब्लॉक है   जानकारी।

परत I या परत II के मामले में, फ्रेम पूरी तरह से स्वतंत्र हैं   एक दूसरे से, ताकि आप एक एमपीईजी ऑडियो फ़ाइल के किसी भी हिस्से को काट सकें और   इसे सही ढंग से खेलो। खिलाड़ी तब से शुरू होने वाले संगीत को बजाएगा   पहला पूर्ण मान्य फ्रेम यह मिलेगा। हालांकि, लेयर के मामले में   III, फ़्रेम हमेशा स्वतंत्र नहीं होते हैं। के संभावित उपयोग के कारण   "बाइट जलाशय", जो एक प्रकार का आंतरिक बफर है, फ्रेम अक्सर होते हैं   एक दूसरे पर निर्भर। सबसे खराब स्थिति में, 9 इनपुट फ्रेम हो सकते हैं   एक एकल फ्रेम को डिकोड करने में सक्षम मधुमक्खी से पहले की जरूरत है।

यदि आपको एक एमपीईजी ऑडियो फ़ाइल के बारे में जानकारी प्राप्त करने की आवश्यकता है, तो आप   बस पहले फ्रेम का पता लगा सकते हैं, और इसकी जानकारी पुनः प्राप्त कर सकते हैं   हैडर। अन्य फ्रेम के भीतर सूचना के अनुरूप होना चाहिए   पहले एक, बिटरेट को छोड़कर, जैसा कि आप पुनर्प्राप्त कर रहे हैं   एक चर बिटरेट (VBR) फ़ाइल से जानकारी। VBR फ़ाइल में,   बिटरेट को प्रत्येक फ्रेम में बदला जा सकता है। यह एक छूट के रूप में इस्तेमाल किया जा सकता है,   अधिक उपयोग करके, संपूर्ण फ़ाइल के दौरान निरंतर ध्वनि की गुणवत्ता बनाए रखने के लिए   बिट्स जब संगीत अधिक जटिल होता है और इस प्रकार अधिक बिट्स की आवश्यकता होती है   एक समान गुणवत्ता के साथ एन्कोडेड।

फ़्रेम हेडर ही 32 बिट्स (4 बाइट्स) की लंबाई है। पहले बारह   बिट्स (या MPEG 2.5 एक्सटेंशन के मामले में पहले ग्यारह बिट्स) a   फ्रेम हेडर हमेशा 1 पर सेट होता है और इसे "फ्रेम सिंक" कहा जाता है। फ्रेम्स   एक वैकल्पिक सीआरसी चेकसम की सुविधा भी हो सकती है। यह 16 बिट लंबा है और, यदि   यह मौजूद है, तुरंत फ्रेम हैडर का अनुसरण करता है। सीआरसी आने के बाद   ऑडियो डेटा। सीआरसी की फिर से गणना करके और उसके मूल्य की तुलना करके   यदि आप फ्रेम के दौरान बदल गए हैं, तो यह देख सकते हैं   बिटस्ट्रीम का संचरण।


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