120fps — 120 Hz रिफ्रेश रेट वाले डिस्प्ले पर 120 फ्रेम प्रति सेकंड की फ्रेम रेट उपलब्ध है, जहाँ प्रत्येक फ्रेम 8.3 ms लेती है। Apple WWDC 2023 Session के अनुसार, ProMotion सुगमता और ऊर्जा खपत के संतुलन के लिए स्वचालित रूप से 24 से 120 Hz के बीच आवृत्ति बदलता है। 8.3 ms मानक बजट का आधा है, जिसके लिए गंभीर रेंडरिंग ऑप्टिमाइजेशन की आवश्यकता है।
मुख्य बातें
120fps मानक फ्रेम रेट से दोगुना है, जहाँ डिस्प्ले हर सेकंड 120 बार छवि अपडेट करता है। प्रत्येक फ्रेम का समय बजट 8.33 ms है — 60fps का आधा। इसका मतलब है कि GPU और CPU को ग्राफिक्स दोगुनी गति से प्रोसेस करने होंगे, और 60fps पर 16.7 ms में काम करने वाले सभी एल्गोरिदम 120fps पर केवल तब ही फिट होते हैं यदि वे दोगुने कुशल हों।
120 Hz डिस्प्ले वाला पहला मोबाइल उपकरण Razer Phone (2017) था जिसमें Sharp का IGZO पैनल था। Apple ने iPad Pro (2017) में ProMotion नाम से 120 Hz पेश किया, और iPhones में केवल 2021 में iPhone 13 Pro के साथ। Android पर, 120 Hz 2020 से मैनस्ट्रीम बन गया: Samsung Galaxy S20, OnePlus 8 Pro, Xiaomi Mi 10। आज, 90–120 Hz फ्लैगशिप उपकरणों का मानक है, और LTPO तकनीक गतिशील आवृत्ति स्विचिंग सक्षम करती है।
120fps का उपयोगकर्ता धारणा 60fps से इतना नहीं कि रुकावट की अनुपस्थिति में, बल्कि तुरंत प्रतिक्रिया की भावना में भिन्न होती है — कर्सर, स्क्रोलिंग, और एनिमेशन न्यूनतम विलंब के साथ उंगली का अनुसरण करते हैं। इस भावना को अक्सर “तरल” या “तेलीया” स्क्रीन के रूप में वर्णित किया जाता है। 120 Hz का उपयोग करने के बाद, 60 Hz पर लौटना व्यस्तिगत रूप से धीमा लगता है, भले ही कोई उद्देश्य फ्रेम ड्रॉप न हो।
120 Hz डिस्प्ले भौतिक रूप से पिक्सेल्स को 120 बार प्रति सेकंड अपडेट करता है, MIPI DSI/DPI बस पर दोगुनी आवृत्ति पर सिग्नल भेजता है। प्रत्येक पिक्सेल हर 8.3 ms में एक नया चमकीलापन मान प्राप्त करता है। OLED पैनल्स के लिए, इसका मतलब है कि प्रत्येक उप-पिक्सेल का उत्सर्जन समय कम हो जाता है, जिसके लिए समान छवि चमकीलापन बनाए रखने के लिए अधिक चमकीली बैकलाइट की आवश्यकता होती है।
LTPO (लो-टेंपरेचर पॉलीक्रिस्टलाइन ऑक्साइड) OLED डिस्प्ले निर्माण तकनीक है जो LTPS (उच्च स्विचिंग गति) और IGZO (स्थिर अवस्था में कम ऊर्जा खपत) को जोड़ती है। LTPO डिस्प्ले को बिना अतिरिक्त ऊर्जा लागत के 1 से 120 Hz तक गतिशील रूप से अपनी रिफ्रेश रेट बदलने की अनुमति देती है। Always-On Display मोड में, आवृत्ति 1 Hz तक गिर जाती है; स्क्रोलिंग के दौरान, यह 120 Hz तक बढ़ जाती है। यह निरंतर 120 Hz पर चलने वाले डिस्प्ले की तुलना में 30% तक ऊर्जा बचत प्रदान करता है।
Frame pacing — फ्रेमों के बीच अंतरालों की एकरूपता, 120fps पर सबसे महत्वपूर्ण पैरामीटर है। 60fps पर 2–3 ms का अंतर अध्यक्षनीय नहीं होता, जबकि 120fps पर वही निरपेक्ष अंतर फ्रेम अवधि का 25% होता है और रुकावट के रूप में महसूस होता है। सुगम 120fps के लिए, प्रत्येक फ्रेम 8.3 ms ±1 ms के 2dीतर होना चाहिए। Xcode Instruments में FrameRate जैसे टूल न केवल औसत FPS दिखाते हैं बल्कि frame pacing का मूल्यांकन करने के लिए अंतरालों का हिस्टोग्राम भी दिखाते हैं।
// iOS — CADisplayLink के माध्यम से 120 Hz डिस्प्ले का पता लगाना
func checkDisplayRefreshRate() {
let link = CADisplayLink(target: self,
selector: #selector(step))
if let preferredRate = link?.preferredFrameRateRange {
print("अधिकतम आवृत्ति: \(preferredRate.maximum) हर्ट्ज़")
}
}
ProMotion 120 Hz तक अनुकूली रिफ्रेश रेट वाले डिस्प्ले के लिए Apple का ट्रेडमार्क है। पहली बार iPad Pro 10.5 (2017) में पेश किया गया, बाद में iPhone 13 Pro (2021) और MacBook Pro (2021) में दिखाई दिया। ProMotion सिर्फ 120 Hz नहीं है — यह बुद्धिमान आवृत्ति प्रबंधन है: सिस्टम सामग्री के प्रकार का विश्लेषण करता है और प्रदर्शन और ऊर्जा खपत के इष्टतम संतुलन के लिए आवृत्ति बदलता है।
ProMotion चार मोड का समर्थन करता है: स्थिर सामग्री और 24fps वीडियो के लिए 24 Hz, 30fps वीडियो के लिए 30 Hz, UI नेविगेशन के लिए 60 Hz, और स्क्रोलिंग और गेमिंग के लिए 120 Hz। मोड के बीच स्विचिंग एक ही फ्रेम (8.3 ms) में होती है और उपयोगकर्ता को दिखाई नहीं देती। डेवलपर्स CADisplayLink में preferredFrameRateRange के माध्यम से आवृत्ति चयन को प्रभावित कर सकते हैं, लेकिन अंतिम निर्णय सिस्टम द्वारा सामग्री विश्लेषण के आधार पर लिया जाता है।
Apple iOS 15 से ProMotion के साथ काम करने के लिए APIs प्रदान करता है। CADisplayLink.preferredFrameRateRange एक पसंदीदा आवृत्ति सीमा निर्धारित करने की अनुमति देता है। UIScene.ActivationConditions दृश्यों के बीच संक्रमण करते समय आवृत्ति को प्रभावित कर सकता है। Metal रेंडरिंग के लिए, ProMotion के साथ सिंक के लिए CAMetalLayer.displaySyncEnabled का true होना आवश्यक है। यदि कोई ऐप 120fps के लिए ऑप्टिमाइज्ड नहीं है, तो iOS स्वचालित रूप से इसे 60 Hz पर स्विच कर देता है, जो Xcode में GPU Report अनुभाग में देखा जा सकता है।
// iOS — गेमिंग मोड के लिए 120fps का अनुरोध
let displayLink = CADisplayLink(
target: self,
selector: #selector(gameLoop)
)
if #available(iOS 15.0, *) {
displayLink?.preferredFrameRateRange =
CAFrameRateRange(minimum: 80,
maximum: 120,
preferred: 120)
}
displayLink?.add(to: .current,
forMode: .default)
120fps के लिए ऑप्टिमाइजेशन कोड की गति को दोगुना करने के बारे में नहीं है, बल्कि रेंडरिंग आर्किटेक्चर पर पुनर्विचार करने के बारे में है। 60fps पर 16.7 ms में होने वाली संचालन अब 8.3 ms में पूरी होनी चाहिए। यह पाइपलाइन के सभी चरणों को प्रभावित करता है: CPU तैयारी, GPU रेंडरिंग, और सिस्टम कॉल्स।
120fps पर, GPU के समान लोड के लिए प्रति फ्रेम draw calls की संख्या 60fps की तुलना में आधी होनी चाहिए। यदि 60fps पर 400 draw calls स्वीकार्य हैं, तो 120fps पर 200 से अधिक की अनुमति नहीं है। draw calls कम करने के लिए टेक्स्चर एटलस, मेश मर्जिंग, और GPU इंस्टैन्सिंग का उपयोग करें। Metal पर, Indirect Command Buffers का उपयोग करें; Vulkan पर, समानांतर कमांड रिकॉर्डिंग के लिए Secondary Command Buffers का उपयोग करें।
Shaders — एक और महत्वपूर्ण कारक। अनेक टेक्स्चर लॉकअप और गणितीय संचालनों के साथ जटिल पिक्सेल शेडर्स आसानी से 8.3 ms के बजट को पार कर सकते हैं। कम प्रेसिजन शेडर्स (float के बजाय half) का उपयोग करें, निर्देशों और टेक्स्चर नमूनों की संख्या कम करें। मोबाइल GPUs (Apple A17, Snapdragon 8 Gen 3) पर, प्रत्येक टेक्स्चर लॉकअप 2–4 चक्र लेता है, और 120fps पर यह अड़चनी बन सकता है।
120fps पर, मुख्य थ्रेड को GPU रेंडरिंग के लिए समय छोड़ने के लिए 4–5 ms में एक फ्रेम तैयार करना होगा। मुख्य थ्रेड पर कोई भी सिंक्रोनस संचालन — डेटाबेस से पढ़ना, JSON पार्सिंग, इमेज लोडिंग — रुकावट पैदा करता है। सभी भारी संचालनों को बैकग्राउंड थ्रेड्स पर ले जाएं, असिंक्रोनस APIs और थ्रेड पूल्स का उपयोग करें। iOS में, qualityOfService .userInteractive के साथ DispatchQueue को केवल क्रिटिकल रेंडरिंग कोड के लिए आरक्षित रखा जाना चाहिए।
| घटक | 120fps बजट | 60fps बजट |
|---|---|---|
| CPU (मुख्य थ्रेड) | 4 ms | 8 ms |
| GPU रेंडरिंग | 4 ms | 8 ms |
| कंपोजिटिंग | 0.3 ms | 0.7 ms |
| VSync प्रतीक्षा | 0–2 ms | 0–5 ms |
120fps और 60fps की तुलना सिर्फ सुगमता के दोगुणा होने के बारे में नहीं है। अंतर सामग्री के प्रकार के आधार पर अलग-अलग महसूस होता है। स्क्रोलिंग और UI एनिमेशन के लिए, 120fps एक व्यक्तिगत रूप से अधिक “उत्तरदायी” इंटरफ़ेस प्रदान करता है। गेमिंग के लिए, 120fps का लाभ कम मोशन ब्लर और तेज़ वस्तुओं के अधिक सटीक ट्रैकिंग में दिखाई देता है।
ऊर्जा खपत — मुख्य समझौता। 120fps समान डिस्प्ले चमकीलापन पर 60fps की तुलना में 30–50% अधिक ऊर्जा खपत करता है। इसका मतलब है कि 4000 mAh बैटरी पर, 120fps पर एक घंटे की गेमिंग बैटरी को 25–30% तज़ी से खाली करती है। LTPO डिस्प्ले स्थिर दृश्यों में आवृत्ति को 1 Hz तक कम करके समस्या का आंशिक समाधान करते हैं, लेकिन सक्रिय उपयोग (स्क्रोलिंग, गेमिंग) के दौरान आवृत्ति अधिकतम पर ही रहती है।
60fps और 120fps के बीच चयन डेवलपर की प्राथमिकताओं पर निर्भर करता है। सोशल नेटवर्क्स, मैसेंजर्स और न्यूज़ एप्स के लिए, 120fps का कोई महत्वपूर्ण लाभ नहीं है — मुख्य इंटरैक्शन (पढ़ना, टेक्स्ट इनपुट) अत्यधिक सुगमता से लाभान्वित नहीं होता है। गेमों, मानचित्रों, ग्राफिक्स एडिटर्स और तीव्र एनिमेशन वाले ऐप्स के लिए, 120fps एक प्रतिस्पर्धात्मक लाभ और गुणवत्ता का मार्कर बन जाता है।
परीक्षण 120fps के लिए एक विशेष दृष्टिकोण की आवश्यकता होती है: मानक 60fps मैत्रिक्स 120 Hz पर frame pacing की समस्याओं को प्रकट नहीं करते हैं। वास्तविक स्क्रीन व्यवहार को रिकॉर्ड करने के लिए हाई-स्पीड कैमरा (120+ fps) या बिल्ट-इन प्लेटफ़ॉर्म टूल्स का उपयोग करें — iOS के लिए Xcode Metal Capture और Android के लिए AGI (Android GPU Inspector)। ये टूल VSync प्रतीक्षा सहित प्रत्येक फ्रेम का सतीक समय दिखाते हैं और माइक्रो-स्टटर्स की पहचान करने में मदद करते हैं।
अक्सर पूछे जाने वाले प्रश्न
हमेशा नहीं। 120fps को दोगुनी ऊर्जा और कम्यूटेशनल संसाधनों की आवश्यकता होती है। स्थिर सामग्री और साधारण UI के लिए, 60fps पर्याप्त है। 120fps का लाभ गतिशील दृश्यों में ध्यानदेय है: स्क्रोलिंग, गेमिंग, संक्रमण एनिमेशन।
Xcode Instruments (Core Animation टेम्पलेट) या Android Studio Profiler का उपयोग करें। iOS पर, CADisplayLink.timestamp की जाँच करें — कॉल्स के बीच का अंतराल लगभग 8.3 ms होना चाहिए। Android पर, Developer Options में Show refresh rate चालू करें।
डिस्प्ले पिक्सेल्स को दोगुनी बार अपडेट करता है, GPU दोगुने रेंडरिंग संचालन करता है, और CPU दोगुने फ्रेम प्रोसेस करता है। प्रत्येक संचालन ऊर्जा खपत करता है। LTPO डिस्प्ले स्थिर अवस्था में आवृत्ति कम करते हैं, लेकिन सक्रिय उपयोग के दौरान ऊर्जा खपत आवृत्ति के अनुपात में बढ़ जाती है।
हाँ। Android 11 से शुरू करके, सिस्टम विभिन्न रिफ्रेश रेट का समर्थन करता है। डेवलपर्स WindowManager.setPreferredRefreshRate के माध्यम से 120 Hz का अनुरोध कर सकते हैं। हालांकि, सभी उपकरण 120fps को स्थिर रूप से बनाए नहीं रख सकते — GPU रेंडरिंग ऑप्टिमाइजेशन आवश्यक है।
एक ब्लाइंड टेस्ट में, अधिकांश उपयोगकर्ता अंतर नोटिस करते हैं स्क्रोलिंग और एनिमेशन के दौरान। हालांकि, रोजमर्रा के उपयोग (सोशल मीडिया, वीडियो, मैसेंजर्स) के लिए, अंतर व्यक्तिगत रूप से छोटा है। 120 Hz की आदत होने के बाद, 60 Hz पर लौटना धीमा लगता है।
सारांश
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।
यह भी पढ़ें