iPhone MOV वीडियो को यूनिवर्सल MP4 फ़ॉर्मेट में कैसे बदलें
अपने ब्राउज़र में QuickTime MOV को H.264 MP4 में बदलें, और समझें कि फ़ाइल शुरू में रिजेक्ट क्यों हुई थी।
MOV और MP4 दिखने से कहीं ज़्यादा करीबी हैं
इन दोनों कंटेनर फ़ॉर्मेट का एक साझा पूर्वज है। Apple के QuickTime फ़ाइल फ़ॉर्मेट ने ISO बेस मीडिया फ़ाइल फ़ॉर्मेट की नींव रखी, और MP4 उसी पर बना है। किसी हेक्स व्यूअर में .mov और .mp4 फ़ाइल को साथ-साथ खोलकर देखें तो एक जैसी बॉक्स संरचना मिलती है: एक ftyp बॉक्स जो बताता है कि फ़ाइल खुद को क्या बताती है, एक moov बॉक्स जिसमें इंडेक्स होता है, और एक mdat बॉक्स जिसमें असली मीडिया डेटा होता है।
ज़्यादातर मामलों में iPhone से सीधे मिली .mov फ़ाइल में पहले से ही H.264 वीडियो और AAC ऑडियो होता है, यानी वही जो .mp4 फ़ाइल में होता है। इन्हें अलग दिखाने का ज़्यादातर काम सिर्फ़ फ़ाइल एक्सटेंशन करता है।
तो फिर कुछ चीज़ें इसे चलाने से मना क्यों करती हैं
ज़्यादातर दो वजहों से। पहली है अंदर का कोडेक। अगर आपके iPhone का कैमरा Most Compatible की बजाय High Efficiency पर सेट है, तो वह HEVC में रिकॉर्ड करता है, जिसे H.265 भी कहा जाता है। यह अब भी .mov में ही रैप होता है, लेकिन HEVC का सपोर्ट उस तरह भरोसेमंद नहीं है जिस तरह H.264 का है: यह ऑपरेटिंग सिस्टम, ग्राफ़िक्स हार्डवेयर और लाइसेंसिंग पर निर्भर करता है, यही वजह है कि वही फ़ाइल किसी Mac पर आराम से चल जाती है और किसी Windows एडिटर में रिजेक्ट हो जाती है। फ़ोन से ऊपर के कैमरे और भी अनोखे विकल्प जोड़ते हैं, जिनमें ProRes शामिल है, जिसे प्रोफ़ेशनल सॉफ़्टवेयर के अलावा लगभग कुछ भी नहीं खोल पाता।
दूसरी वजह है वह सॉफ़्टवेयर जो एक्सटेंशन देखकर फ़ैसला करता है। कई अपलोड फ़ॉर्म, पुराने एडिटर और एम्बेडेड प्लेयर फ़ाइल के नाम के आख़िरी चार अक्षर पढ़ते हैं और आगे कुछ नहीं सोचते। फ़ाइल बाइट-दर-बाइट सही हो सकती है और फिर भी वापस लौटा दी जाती है।
यह कनवर्टर करता क्या है
यह कंटेनर को पढ़ता है, उसमें से वीडियो ट्रैक निकालता है, उसे ब्राउज़र के अपने डिकोडर से डिकोड करता है, और उसे एक नए MP4 के अंदर H.264 में दोबारा एनकोड करता है। ऑडियो ट्रैक अगर AAC है तो उसे बिना बदले वैसे ही कॉपी कर दिया जाता है, तो आवाज़ स्रोत से बिट-दर-बिट एक जैसी रहती है और इसमें न समय लगता है न क्वालिटी घटती है।
फ़्रेम का आकार वैसा ही रहता है। यहाँ कन्वर्ट करना कंप्रेस करना नहीं है, इसलिए 4K MOV वापस 4K MP4 के रूप में ही आता है, चुपचाप छोटा किए बिना। बिट बजट स्रोत वीडियो ट्रैक के खर्च से थोड़ा कम रखा जाता है, जिससे आमतौर पर फ़ाइल थोड़ी छोटी हो जाती है।
वीडियो को कॉपी नहीं बल्कि दोबारा एनकोड किया जाता है, और यह फ़र्क़ मायने रखता है। आप एक बार का लॉसी एनकोडिंग खर्च कर रहे हैं। किसी क्लाइंट, फ़ोन, प्रोजेक्टर या सोशल प्लेटफ़ॉर्म के लिए जो वैसे भी इसे दोबारा एनकोड कर देगा, यह नज़र ही नहीं आता। लेकिन जिस फ़ुटेज को आप एडिट सूट में ग्रेड और कट करने वाले हैं, वहाँ यह वह चीज़ नहीं जो आप चाहते हैं।
कम्पैटिबिलिटी, जानबूझकर चुनी गई
आउटपुट H.264 Baseline प्रोफ़ाइल में होता है। Baseline कुछ ऐसे टूल छोड़ देता है जो ऊँची प्रोफ़ाइलें इस्तेमाल करती हैं, जिनमें B-फ़्रेम शामिल हैं, इसलिए किसी दी गई बिटरेट पर यह High प्रोफ़ाइल जितनी कुशलता से कंप्रेस नहीं करता। बदले में आपको ऐसी फ़ाइल मिलती है जो लगभग हर जगह चलती है: पुराने Android फ़ोन, सेट-टॉप बॉक्स, कार के हेड यूनिट, मीटिंग रूम के प्रोजेक्टर से जुड़ा वह पुराना लैपटॉप। अगर आप इसलिए कन्वर्ट कर रहे हैं क्योंकि किसी चीज़ ने आपकी MOV को रिजेक्ट कर दिया था, तो यह अदला-बदली सही दिशा में जाती है।
क्या गड़बड़ हो सकती है
- आपके MOV के अंदर जो भी है, उसके लिए ब्राउज़र को एक डिकोडर चाहिए। H.264 सार्वभौमिक है। HEVC इस पर निर्भर करता है कि आप किस मशीन पर बैठे हैं। ProRes डिकोड नहीं होगा।
- अगर तेज़ रास्ता नहीं चल पाता, या खुद को रीयल टाइम से धीमा मापता है, तो यह कैनवस से वीडियो रिकॉर्ड करने पर आ जाता है। इसमें कम से कम उतना ही समय लगता है जितना क्लिप चलने में लगता है, और जिन ब्राउज़रों में MP4 रिकॉर्डिंग नहीं होती, वहाँ इसके बजाय WebM बनता है।
- प्रोसेस होने के दौरान पूरी फ़ाइल मेमोरी में रखी जाती है। छोटी क्लिप में कोई दिक़्क़त नहीं। कोई लंबी 4K फ़ाइल टैब को थका देगी।
- जो ऑडियो AAC नहीं है उसे वैसे कॉपी नहीं किया जा सकता, और तेज़ रास्ता उसके बिना ही आगे बढ़ जाता है, इसलिए MP4 बिना आवाज़ के वापस आता है। मूल फ़ाइल हटाने से पहले नतीजा चलाकर देख लें।
ffmpeg कब बेहतर जवाब है
अगर आपकी MOV में पहले से ही H.264 और AAC है, जो तब होता है जब फ़ोन Most Compatible पर सेट था, तो उसे कन्वर्ट करने की ज़रूरत ही नहीं। उसे बस दोबारा रैप करने की ज़रूरत है, और ffmpeg यह स्ट्रीम कॉपी से करता है: ffmpeg -i clip.mov -c copy clip.mp4 एक भी फ़्रेम डिकोड किए बिना मीडिया को एक नए कंटेनर में ले जाता है। यह किसी भी आकार की फ़ाइल पर सेकंडों में पूरा हो जाता है, और चूँकि कुछ भी दोबारा एनकोड नहीं होता, इसमें क्वालिटी का कोई नुक़सान नहीं होता।
यह ब्राउज़र जो भी कर सकता है उससे पूरी तरह बेहतर है, इसलिए अगर आप अक्सर फ़ुटेज के साथ काम करते हैं तो इसे इंस्टॉल करना फ़ायदेमंद है। दूसरी स्थिति के लिए ब्राउज़र ही सही टूल है: एक फ़ाइल, इस बात की कोई गारंटी नहीं कि उसके अंदर क्या है, और यह पता लगाने के लिए सॉफ़्टवेयर इंस्टॉल करने का कोई मन नहीं।
आपका फ़ुटेज आपकी डिवाइस पर ही रहता है
कुछ भी अपलोड नहीं होता। डीमक्स, डिकोड, एनकोड और रीमक्स, ये सब इसी पेज के भीतर होते हैं, और यह जानना तब काम आता है जब फ़ुटेज किसी शादी का हो, एम्बार्गो के तहत किसी इंटरव्यू का हो, या किसी अनरिलीज़्ड कट का हो। अपने ब्राउज़र के डेवलपर टूल खोलें, नेटवर्क टैब देखें, और कुछ कन्वर्ट करें। कोई रिक्वेस्ट आपका वीडियो नहीं ले जाती, क्योंकि कोई रिक्वेस्ट बनती ही नहीं।
MOV से MP4 आपकी फ़ाइलों को इसी टैब में लेता है और बिना कुछ अपलोड किए कन्वर्ट करता है।
MOV से MP4 खोलें