# वीडियो से GIF — वीडियो को GIF में बदलिए

हिस्सा चुनिए, साइज़ चुनिए, और फ़्रेम दर चुनिए।

> MP4, MOV या WebM के किसी हिस्से को चलती हुई GIF बना दीजिए। हिस्सा, चौड़ाई और फ़्रेम दर चुनिए; फ़्रेम आपके ब्राउज़र में पढ़े जाते हैं और GIF भी वहीं लिखी जाती है। कुछ अपलोड नहीं होता।

यह पेज एक इंटरैक्टिव टूल है जो पूरी तरह आपके ब्राउज़र में चलता है, https://abox.tools/hi/video-to-gif/ पर — आप इसे जो भी देते हैं, वह कहीं अपलोड नहीं होता। आगे वह सब कुछ है जो यह पेज इस टूल के बारे में शब्दों में कहता है; इसे इस्तेमाल करने के लिए यह पता खोलें।

## यह टूल वीडियो **कभी अपलोड नहीं करता**। यहाँ कोई सर्वर है ही नहीं।

हर फ़्रेम आपका अपना ब्राउज़र, आपके अपने हार्डवेयर पर पढ़ता है, उसका आकार बदलता है, उसे क्वांटाइज़ करता है और लिखता है। यहाँ कुछ भी न कुछ ला सकता है, न भेज सकता है, क्योंकि इस टूल में कोई नेटवर्क सुविधा है ही नहीं। और मान लीजिए कोई रास्ता होता भी, तो इस पेज के दूसरी तरफ़ ऐसा कोई सर्वर ही नहीं है जिसे वीडियो भेजा जा सके।

- ✗ कोई अपलोड नहीं
- ✗ कोई खाता नहीं
- ✗ कोई वॉटरमार्क नहीं
- ✓ कोई भी लंबाई
- ✓ ऑफ़लाइन चलता है

## वीडियो को GIF में कैसे बदलें

1. **कोई वीडियो चुनिए।** MP4, MOV, M4V या WebM पिकर पर छोड़ दीजिए, या हाथ से चुन लीजिए। ब्राउज़र उसे सीधे आपकी डिस्क से पढ़ता है; इस दौरान कुछ भी कहीं नहीं भेजा जाता।
2. **हिस्से पर निशान लगाइए।** क्लिप चलाइए और जहाँ उसे शुरू होना चाहिए वहाँ `I` दबाइए तथा जहाँ खत्म होना चाहिए वहाँ `O`, या फिर पट्टी पर बनी मुठियाँ खींच दीजिए। GIF कुछ ही सेकंड की होती है, और बाकी दोनों से कहीं ज़्यादा यही सेटिंग तय करती है कि फ़ाइल छोटी रहेगी या विशाल हो जाएगी।
3. **चौड़ाई और फ़्रेम दर चुनिए।** 480 पिक्सल चौड़ाई और बारह फ़्रेम प्रति सेकंड, GIF के ज़्यादातर कामों के लिए ठीक बैठते हैं। चौड़ाई आधी कीजिए तो पिक्सल चौथाई रह जाते हैं; बारह फ़्रेम प्रति सेकंड गति की तरह ही पढ़े जाते हैं, बिना उनकी कीमत चुकाए जो किसी को दिखते ही नहीं।
4. **इसे बनाइए, और डाउनलोड कीजिए।** फ़्रेम पढ़े जाते हैं, पूरे एनिमेशन के लिए 256 रंगों का एक ही पैलेट चुना जाता है, और हर फ़्रेम में तस्वीर का सिर्फ़ वही हिस्सा लिखा जाता है जो बदला। तैयार होते ही वह पेज पर चलने लगती है, और डाउनलोड में आपको वही फ़ाइल मिलती है।

## विस्तार से

[वीडियो को GIF में कैसे बदलें](https://abox.tools/hi/guides/turn-a-video-into-a-gif/): कौन-सा हिस्सा, कौन-सी चौड़ाई और कौन-सी फ़्रेम दर चुनें, वीडियो से बनी GIF वीडियो से दस गुना बड़ी क्यों होती है, और GIF का इस्तेमाल करना कब ठीक है।

## बॉक्स में और भी टूल

- [GIF मेकर](https://abox.tools/hi/gif-maker/): तस्वीरों के एक सेट को एक ही एनिमेशन बना दीजिए।
- [GIF फ़्रेम स्प्लिटर](https://abox.tools/hi/split-gif/): हर फ़्रेम अलग, अपनी PNG फ़ाइल में।
- [GIF एनालाइज़र](https://abox.tools/hi/gif-analyzer/): फ़्रेम, देरी, पैलेट, और हर बाइट कहाँ गया।
- [तस्वीरों से वीडियो](https://abox.tools/hi/images-to-video/): तस्वीरों के एक फ़ोल्डर को वीडियो बना दीजिए।

## सवाल

### क्या मेरा वीडियो कहीं अपलोड होता है?

नहीं। उसे आपका अपना ब्राउज़र, आपके अपने हार्डवेयर पर पढ़ता है, उसका नमूना लेता है और उसे बदलता है। इस टूल का कोई सर्वर वाला हिस्सा है ही नहीं, और पेज की `Content-Security-Policy` उन सारे पतों के नाम गिना देती है जिनसे यह संपर्क कर सकता है, जिनमें से एक भी इस साइट का नहीं है। सिर्फ़ बता देने से बात न बने, तो इंटरनेट काटकर कोई GIF बनाकर देख लीजिए।

### मैं कौन-कौन से वीडियो फ़ॉर्मैट बदल सकता हूँ?

MP4, M4V और MOV सीधे पढ़े जाते हैं, उनके भीतर जो भी हो, यानी H.264, HEVC, AV1 या VP9, बशर्ते आपका ब्राउज़र उस कोडेक को डिकोड कर सके। बाकी जो कुछ आपका ब्राउज़र चला सकता है, सबसे ज़ाहिर तौर पर WebM, उसके लिए प्लेयर को हर पल पर ले जाकर पढ़ा जाता है। यह धीमा है, और इस बारे में थोड़ा कम सटीक भी कि कौन-सा फ़्रेम कहाँ गिरेगा। और जिस फ़ाइल को ब्राउज़र न पढ़ सके न चला सके, यानी व्यवहार में AVI, WMV, FLV और ज़्यादातर MKV, उसे बीच रास्ते नाकाम होने के बजाय एक संदेश के साथ मना कर दिया जाता है।

### मेरी GIF इतनी बड़ी क्यों है?

क्योंकि GIF 1987 का फ़ॉर्मैट है जो गति नहीं, पूरी-पूरी तस्वीरें सहेजता है। पाँच सेकंड की क्लिप से ऐसी GIF बनाने का कोई रास्ता ही नहीं जो उतनी छोटी हो जितनी वह पाँच सेकंड की MP4 थी जिससे वह बनी। वीडियो से बनी GIF आम तौर पर वीडियो से दस गुना बड़ी होती है। इसे असल में तीन सेटिंग तय करती हैं, और इसी क्रम में। हिस्सा कितना लंबा है, तस्वीर कितनी चौड़ी है, और एक सेकंड में कितने फ़्रेम हैं। चौड़ाई आधी कीजिए तो पिक्सल चौथाई रह जाते हैं, और कीमत पिक्सल ही लेते हैं।

### सिर्फ़ 256 रंग क्यों?

फ़ॉर्मैट यही है: GIF ज़्यादा से ज़्यादा 256 रंगों की एक तालिका ढोती है और हर पिक्सल को उसी में की एक संख्या के रूप में सहेजती है। यह टूल उन 256 को इस तरह चुनता है कि आपके हिस्से के हर फ़्रेम के रंग गिने जाएँ और उन्हें 256 समूहों में बाँट दिया जाए, यानी median cut वाला मानक तरीका, ताकि पैलेट रंगों के किसी तयशुदा सेट के बजाय आपकी क्लिप पर फ़िट बैठे। जहाँ कोई रंग नदारद हो, वहाँ डिदरिंग सबसे नज़दीकी दो रंग मिला देती है, ताकि कोई ग्रेडिएंट धारियाँ बनने के बजाय ग्रेडिएंट ही बना रहे।

### डिदरिंग वाली सेटिंग करती क्या है?

वह थोड़े-से शोर के बदले बहुत सारी पट्टियाँ बचा लेती है। चालू रहने पर वह आसमान, जो वरना चार सपाट पट्टियाँ बन जाता, ग्रेडिएंट ही बना रहता है है, बस एक हल्की बनावट और थोड़ी बड़ी फ़ाइल की कीमत पर। बंद रहने पर तस्वीर ज़्यादा सपाट और फ़ाइल छोटी रहती है, जो स्क्रीन रिकॉर्डिंग, लकीरों वाली कला और पहले से सपाट रंगों से बनी हर चीज़ पर जँचता है। यहाँ इस्तेमाल होने वाला डिदर error-diffusion वाला नहीं, क्रमित (ordered) है, इसलिए न बदलने वाला बैकग्राउंड फ़्रेमों के बीच झिलमिलाने के बजाय बिलकुल स्थिर रहता है।

### क्या लंबाई या साइज़ पर कोई सीमा है?

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

### क्या इसमें आवाज़ बची रहती है?

GIF आवाज़ ढो ही नहीं सकती। इस फ़ॉर्मैट का ऐसा कोई संस्करण है ही नहीं जिसमें ऑडियो हो, और वेब ने GIF की जगह ज़्यादातर चुपचाप लूप होते वीडियो को इसीलिए रखा। आवाज़ मायने रखती हो, तो वीडियो ही रखिए, और [वीडियो कटर](https://abox.tools/hi/trim-video/) उसमें से कोई हिस्सा एक भी फ़्रेम दोबारा एनकोड किए बिना काट देगा।

### क्या यह मुफ़्त है, और क्या मुझे खाता चाहिए?

यह मुफ़्त है, और यहाँ न कोई खाता है, न साइन-इन, न ट्रायल, न वॉटरमार्क। साइट पर विज्ञापन हैं, और वही इसका खर्च उठाते हैं; विज्ञापनों को आपके वीडियो के बारे में कुछ नहीं दिया जाता।

## प्राइवेसी का यह दावा कैसे जाँचा जा सकता है

- **आपके वीडियो के पास जाने को कोई जगह ही नहीं है।** यह पेज जिन-जिन पतों से संपर्क कर सकता है, Content-Security-Policy उन सबके नाम गिना देती है, और उनमें से एक भी इस साइट का नहीं है। यहाँ कोई ऐसा एंडपॉइंट है ही नहीं जहाँ आपकी फ़ाइल जमा की जा सके, और कोड में ऐसा कुछ भी नहीं जो उसे भेजता, अगर होता भी।
- **यहाँ कुछ भी कहीं से कुछ नहीं लाता।** इस टूल में कोई नेटवर्क सुविधा है ही नहीं: न चिपकाने को कोई पता, न डाउनलोड करने को कुछ, न पहली बार इस्तेमाल पर बाहर से मँगाया जाने वाला कोई इंजन। आपके वीडियो को छूने वाला हर बाइट पेज लोड होते ही इसी ऑरिजिन से आया था।
- **डिकोडिंग स्थानीय है।** फ़्रेम आपके अपने ब्राउज़र के WebCodecs से गुज़रते हैं, या उसी प्लेबैक इंजन से जो आपको यह क्लिप वैसे भी दिखाता। किसका इस्तेमाल हुआ, यह पेज के सिरे पर लिखा होता है, क्योंकि इससे बदल जाता है कि फ़्रेम चुने कैसे जाते हैं, और आपको यह दिखना चाहिए।
- **GIF यहीं लिखी जाती है, ऐसे कोड से जिसे आप पढ़ सकते हैं।** पैलेट, डिदरिंग और LZW कंप्रेशन, तीनों इस टूल के अपने फ़ोल्डर की करीब छह सौ पंक्तियाँ भर हैं। न कोई एनकोडर सेवा, न चलते वक्त बाहर से लाई जाने वाली कोई लाइब्रेरी, और इन सबमें कहीं ऐसी जगह भी नहीं जहाँ से कोई तस्वीर भेजी जा सके।
- **Google क्या लोड करता है, और उसे क्या नहीं दिया जाता।** विज्ञापन और माप वाली स्क्रिप्ट Google से आती हैं। इनमें से किसी को भी आपके वीडियो के बारे में कुछ नहीं सौंपा जाता: न फ़ाइल, न फ़्रेम, न नाम, न साइज़, न लंबाई, न वह हिस्सा जिस पर आपने निशान लगाया। पढ़ने, नमूना लेने, क्वांटाइज़ करने या एनकोड करने वाली हर पंक्ति इसी ऑरिजिन से आती है और रिपॉज़िटरी में दर्ज है।
- **दान का बटन क्या लोड करता है, और उसे क्या नहीं दिया जाता।** हेडर में मौजूद “Buy me a coffee” बटन को cdnjs.buymeacoffee.com से आई एक स्क्रिप्ट बनाती है, और उसके अक्षर Google Fonts से आते हैं। वह एक लिंक है और उससे ज़्यादा कुछ नहीं: वह किसी विज़िट की खबर नहीं करता, और उसे आपके या आपके वीडियो के बारे में कुछ नहीं दिया जाता।
- **यह ऑफ़लाइन भी चलता है।** नेटवर्क काट दीजिए और इस पेज की हर चीज़ काम करती रहेगी। सबसे आसान सबूत यही है।

**खुद जाँच लीजिए।** ऊपर लिखी किसी भी बात को भरोसे पर मानने की ज़रूरत नहीं। यह पेज रिपॉज़िटरी के टेम्पलेट और कॉन्फ़िग से बनता है, एक ऐसी बिल्ड स्क्रिप्ट के ज़रिए जिसे आप पढ़ भी सकते हैं और खुद चला भी सकते हैं। उसका नतीजा `dist` ब्रांच पर कमिट रहता है, यानी जो सर्व हो रहा है और सोर्स से बिल्ड करने पर जो बनता है, दोनों का फ़र्क आप खुद देख सकते हैं: https://github.com/A-Box-of-Tools/website

सबसे पहले पढ़ने लायक फ़ाइलें ये हैं — Content-Security-Policy के लिए `config/site.toml`, `src/frames.js` उन दो तरीकों के लिए जिनसे वीडियो में से फ़्रेम पढ़े जाते हैं, `src/quantize.js` पैलेट के लिए, और `src/gif.js` खुद फ़ाइल के लिए, LZW समेत। इनमें से कोई भी ऐसा कुछ आयात नहीं करता जो कोई रिक्वेस्ट कर सके।
