ऑडियो के लिए, लैटेंसी को कम से कम करने के लिए, हमारा सुझाव है कि आप Oboe का इस्तेमाल करें.
ओबो
Oboe, नेटिव ऑडियो का इस्तेमाल करता है. इसे Android 8.1 और उसके बाद के वर्शन के लिए AAudio और Android के पुराने वर्शन के लिए OpenSL ES पर बनाया गया है. किसी डिवाइस के लिए, रिस्पॉन्स में लगने वाला समय कम से कम करने के लिए, setPerformanceMode(oboe::PerformanceMode::LowLatency)
और setSharingMode(oboe::SharingMode::Exclusive)
सेट करें.
Oboe के बारे में ज़्यादा जानकारी के लिए, शुरुआती निर्देश,
README.md
, और पूरी गाइड देखें. Oboe का इस्तेमाल करने वाले ऐप्लिकेशन का सैंपल देखने के लिए, साउंडबोर्ड ऐप्लिकेशन देखें.
ध्यान दें: अगर आपको Java में, इंतज़ार का समय कम करने वाले ऐप्लिकेशन के लिए आउटपुट ऑडियो स्ट्रीम बनानी है, तो AudioTrack का इस्तेमाल करें. इसके लिए, PERFORMANCE_MODE_LOW_LATENCY
मोड का इस्तेमाल करें.
लागू करने से जुड़ी चेकलिस्ट
Android के नेटिव ऑडियो का इस्तेमाल करने के लिए:
- Android एनडीके डाउनलोड और इंस्टॉल करें.
- Oboe के लिए, शुरू करने की गाइड देखें.
-
Oboe बिल्डर पर
setPerformanceMode(oboe::PerformanceMode::LowLatency)
औरsetSharingMode(oboe::SharingMode::Exclusive)
को कॉल करें. -
android.media.AudioManager.getProperty(java.lang.String) से मिले सुझाए गए नेटिव बफ़र साइज़ और सैंपल रेट का इस्तेमाल करें.
ध्यान दें: इनपुट के लिए भी, एक ही बफ़र साइज़ और सैंपल रेट का इस्तेमाल किया जाना चाहिए.
- अपने कॉलबैक हैंडलर को छोटा रखें. साथ ही, सीपीयू का ज़्यादा इस्तेमाल या अनलिमिटेड ब्लॉकिंग न करें. प्राथमिकता बदलने से बचें.
- इनपुट और आउटपुट कॉलबैक हैंडलर के बीच और कॉलबैक हैंडलर और आपके बाकी ऐप्लिकेशन के बीच कम्यूनिकेट करने के लिए, नॉन-ब्लॉकिंग एल्गोरिदम का इस्तेमाल करें.
अन्य संसाधन
source.android.com
source.android.com साइट को मुख्य तौर पर, Android डिवाइस बनाने वाली OEM कंपनियों और SoC वेंडर के लिए डिज़ाइन किया गया है. ये वेंडर, OEM कंपनियों को कॉम्पोनेंट की सप्लाई करते हैं.
हालांकि, इस साइट पर इंतज़ार के समय के बारे में काफ़ी ज़्यादा जानकारी मौजूद है. इसलिए, आपके लिए इसकी समीक्षा करना फ़ायदेमंद हो सकता है. ऑडियो में लगा समय लेख पढ़ें.
android-ndk
अगर आपको Android के नेटिव ऑडियो का इस्तेमाल करने के बारे में कोई सवाल पूछना है, तो android-ndk डिस्कस ग्रुप पर जाएं.
Oboe में गड़बड़ियों की शिकायत करना
अगर आपको Oboe का इस्तेमाल करने में समस्याएं आ रही हैं, तो गड़बड़ी की शिकायत करें.
वीडियो
- Oboe का इस्तेमाल शुरू करना
- कम लेटेंसी वाला ऑडियो - क्योंकि आपके कान इसकी ज़रूरत है
- Android Dev Summit 2018.
- Android पर सफलता पाना - Android ऑडियो ऐप्लिकेशन को ऑप्टिमाइज़ करने का तरीका
- Android Developer Challenge 2018.
- Android पर बेहतर ऑडियो परफ़ॉर्मेंस (Google I/O 2013)
- पूरा वीडियो, इंतज़ार के समय के बारे में है.
- Android पर बेहतरीन मल्टीमीडिया अनुभव देना (Google I/O 2014)
- वीडियो के शुरुआती 14 मिनट में, ऑडियो और खास तौर पर इनपुट लेटेंसी के बारे में बताया गया है.
- ऑडियो के इंतज़ार का समय: बफ़र साइज़ (100 Days of Google Dev)
- इसमें ऑडियो के इंतज़ार का समय, बफ़र साइज़, और टास्क शेड्यूलिंग के बीच के संबंध के बारे में बताया गया है.