इस पेज का कोड चालू नहीं हुआ।

index.html को सीधे किसी फ़ोल्डर से खोलने पर ब्राउज़र JavaScript मॉड्यूल रोक देता है, इसलिए तस्वीरें चुनने पर कुछ नहीं होगा। इसके बजाय फ़ोल्डर को http पर सर्व कीजिए:

powershell -ExecutionPolicy Bypass -File serve.ps1

फिर http://localhost:8080/ खोलिए।

GIF मेकर — तस्वीरों से चलती हुई GIF

तस्वीरों के एक सेट को एक ही एनिमेशन बना दीजिए।

भाषा: हिन्दी
कोड देखें
यह टूल तस्वीरें कभी अपलोड नहीं करता। यहाँ कोई सर्वर है ही नहीं।

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

लाइव जाँच: जाँच जारी…

ऑफ़लाइन: जाँच जारी…

हमारी बात पर भरोसा मत कीजिए। DevTools खोलिए, Network टैब पर नज़र रखिए, और कोई GIF बनाइए। एक भी रिक्वेस्ट में न कोई तस्वीर जाती है, न थंबनेल, न फ़ाइल का नाम। या फिर इंटरनेट काट दीजिए और तब भी एक बनाकर देखिए।

1 तस्वीरें चुनिए

2 GIF की सेटिंग

रंग कम रंग, छोटी फ़ाइल, ज़्यादा पट्टियाँ।

डिदरिंग लोगो, लकीरों वाली कला और स्क्रीनशॉट के लिए इसे बंद कर दीजिए।

प्रीव्यू देखने के लिए तस्वीरें जोड़िए

फ़्रेम
—
कितनी देर चलती है
—
फ़्रेम का आकार
—
कितनी बार चलती है
—

3 GIF बनाइए

Markdown के रूप में देखें

तस्वीरों से GIF कैसे बनाएँ

  1. अपनी तस्वीरें चुनिए। पूरा फ़ोल्डर पिकर पर छोड़ दीजिए, या फ़ाइलें हाथ से चुन लीजिए। ब्राउज़र उन्हें सीधे आपकी डिस्क से पढ़ता है, और इस दौरान कुछ भी कहीं नहीं भेजा जाता।
  2. उन्हें उसी क्रम में लगाइए जिसमें वे चलनी चाहिए। हैंडल से खींचिए, या तीरों का इस्तेमाल कीजिए। “नाम से क्रम में लगाइए” उसी तरह गिनता है जैसी आप उम्मीद करेंगे, यानी frame_2, frame_10 से पहले आता है।
  3. तय कीजिए कि हर फ़्रेम कितनी देर रुके। हर एक के लिए आधा सेकंड स्लाइडशो बन जाता है, और बीसवाँ हिस्सा एनिमेशन। हर फ़्रेम को एक साथ वही रुकने का समय दे दीजिए, या किसी एक को अलग करके ज़्यादा देर ठहरने दीजिए।
  4. आकार चुनिए, और यह भी कि रंग कैसे चुने जाएँ। GIF अपने क्षेत्रफल और अपने फ़्रेमों की गिनती के साथ बढ़ती जाती है, और उसे वापस नीचे लाने को क्वालिटी का कोई स्लाइडर है ही नहीं, इसलिए सबसे ज़्यादा मायने आकार ही रखता है। हर फ़्रेम के लिए 256 रंग सबसे अच्छा दिखने वाला डिफ़ॉल्ट है, और एक साझा पैलेट छोटा भी रहता है और ज़्यादा स्थिर भी।
  5. GIF बनाइए और डाउनलोड कीजिए। यह आपके अपने हार्डवेयर पर बनती है, इसलिए कितनी देर लगेगी यह किसी कतार पर नहीं, आपकी मशीन पर निर्भर है। सहेजने से पहले तैयार एनिमेशन पेज पर चलकर दिख जाती है।

विस्तार से

तस्वीरों से चलती हुई GIF कैसे बनाएँ तस्वीरों के एक सेट को एक चलती हुई GIF बनाइए: GIF असल में कितनी तेज़ चल सकती है, पैलेट वाली सेटिंग क्या बदलती है, और वे तीन चीज़ें जो सचमुच फ़ाइल को छोटा करती हैं।

सवाल

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

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

मैं कौन-कौन से इमेज फ़ॉर्मैट इस्तेमाल कर सकता हूँ?

कोई भी स्थिर तस्वीर का फ़ॉर्मैट जिसे आपका ब्राउज़र डिकोड कर सके, यानी व्यवहार में JPG, PNG, WebP, GIF, AVIF, और Apple डिवाइसों पर HEIC भी। यहाँ अलग से कोई सूची अपडेट रखने की ज़रूरत नहीं पड़ती, क्योंकि डिकोड करना हमारा नहीं, ब्राउज़र का काम है।

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

क्योंकि GIF हर फ़्रेम को पूरे पिक्सलों के रूप में सहेजती है। यहाँ गति की कोई भरपाई नहीं होती, कुछ भी “पिछली बार जैसा ही, बस खिसका हुआ” के रूप में नहीं रखा जाता, और क्वालिटी का कोई बटन है ही नहीं। साइज़ मोटे तौर पर क्षेत्रफल गुणा फ़्रेमों की संख्या है, और उसे नीचे लाने वाली सिर्फ़ तीन चीज़ें हैं।

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

GIF कितनी तेज़ चल सकती है?

उतनी तेज़ नहीं जितनी संख्या से लगता है। फ़ॉर्मैट हर फ़्रेम की देरी सेकंड के सौवें हिस्सों में सहेजता है, और 1990 के दशक से ब्राउज़र दो सौवें हिस्सों से कम किसी भी देरी को सेकंड के दसवें हिस्से पर बाँध देते हैं। यह नियम उस ज़माने के घूमते ग्लोब के लिए लिखा गया था और कभी हटाया नहीं गया। इसीलिए 0.01s की देरी 100 फ़्रेम प्रति सेकंड पर नहीं चलती, 10 पर चलती है। इसी वजह से यह टूल आपको 0.02s से कम कुछ देगा ही नहीं, और 0.05s यानी 20 फ़्रेम प्रति सेकंड लगभग उतना ही तेज़ है जितना माँगना सार्थक है।

पैलेट वाली सेटिंग क्या बदलती है?

GIF के एक फ़्रेम में ज़्यादा से ज़्यादा 256 रंग होते हैं, और उन्हें किसी न किसी को चुनना ही पड़ता है।

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

क्या मैं पारदर्शी बैकग्राउंड रख सकता हूँ?

हाँ, बशर्ते आपकी तस्वीरों में वह हो। “पारदर्शिता” को “पारदर्शी हिस्से रहने दीजिए” पर कर दीजिए। बस एक बात पहले जान लीजिए। GIF की पारदर्शिता एक ही बिट की होती है, यानी पिक्सल या तो अदृश्य है या पूरा रंगा हुआ, बीच में कुछ नहीं। इसलिए एंटी-एलियस किए किनारे, नरम छायाएँ और फीकी पड़ती हर चीज़ को इसके बजाय सख्त किनारा मिल जाता है। आपकी एनिमेशन ऐसे बैकग्राउंड पर जा रही हो जिसका रंग आपको पता है, तो उसे उसी रंग पर चपटा कर देना बेहतर दिखेगा।

क्या मैं कितनी तस्वीरें इस्तेमाल कर सकता हूँ, इस पर कोई सीमा है?

टूल में कोई सीमा बनाई ही नहीं गई है। व्यावहारिक छत आपकी अपनी मशीन की मेमोरी है, और जो फ़ाइल बाहर आती है उसके साथ आपका सब्र। तस्वीरें एक-एक करके पढ़ी जाती हैं, इसलिए सौ फ़्रेम ठीक हैं, पर 640 px पर सौ फ़्रेम एक बहुत बड़ी GIF भी है। ऊपर “मेरी GIF इतनी बड़ी क्यों है?” देखिए।

क्या यह मुफ़्त है, और क्या इसके लिए खाता बनाना पड़ेगा?

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

क्या यह ऑफ़लाइन चलता है?

हाँ। पेज एक बार लोड कर लीजिए, फिर इंटरनेट काट दीजिए, यह चलता रहेगा। कुछ अपलोड नहीं हो रहा, यह साबित करने का सबसे आसान तरीका भी यही है। जो टूल आपकी तस्वीरें प्रोसेस होने के लिए कहीं भेजता, वह प्लग निकालते ही रुक जाता।