YouTube Mobile Live के डीप लिंक की मदद से, Android ऐप्लिकेशन सीधे मोबाइल डिवाइस से YouTube लाइव स्ट्रीम शुरू कर सकते हैं. ऐप्लिकेशन को सिर्फ़ एक एंट्री पॉइंट देना होता है. जैसे, कोई ऐसा बटन जिस पर क्लिक करके उपयोगकर्ता, Android इंटेंट मैकेनिज़्म का इस्तेमाल करके मोबाइल लाइव स्ट्रीम शुरू कर सके.
उदाहरण
इस फ़्लो में, YouTube ऐप्लिकेशन में डीप लिंक करने वाले ऐप्लिकेशन के लिए उपयोगकर्ता अनुभव दिखाया गया है. इसमें उपयोगकर्ता, मोबाइल लाइवस्ट्रीम सेटअप स्क्रीन पर पहुंचता है.
- सबसे पहले, उपयोगकर्ता स्ट्रीम को कॉन्फ़िगर करता है. इसके लिए, वह टाइटल, निजता मोड, और स्ट्रीम के अन्य विकल्प सेट करता है.
- इसके बाद, उपयोगकर्ता थंबनेल फ़ोटो वाली स्क्रीन पर जाकर, स्ट्रीम के लिए थंबनेल इमेज सेट करता है.
- आखिर में, उपयोगकर्ता लाइव स्ट्रीम शुरू करता है और फ़्रंट या रियर कैमरे से व्यू ब्रॉडकास्ट करता है.

डिवाइस की ज़रूरी शर्तें
Android डिवाइसों को ये ज़रूरी शर्तें पूरी करनी होंगी, ताकि YouTube पर लाइव स्ट्रीमिंग और मोबाइल लाइव डीप लिंक की सुविधा सही तरीके से काम कर सके:
- Android रिलीज़: Marshmallow (एपीआई 23) या इसके बाद का वर्शन
- कैमरा: कम से कम एक कैमरा, जो कम से कम 30 हर्ट्ज़ पर 720 पिक्सल में रिकॉर्डिंग कर सके
- माइक्रोफ़ोन: ऑनबोर्ड माइक्रोफ़ोन
- ऑडियो एन्कोडर: हार्डवेयर से तेज़ी लाने वाला ऑडियो एन्कोडर, जो 8-बिट पीसीएम मोनो ऑडियो को 44.1 किलोहर्ट्ज़ या इससे बेहतर फ़्रीक्वेंसी पर एएसी में एन्कोड कर सकता है
- वीडियो एन्कोडर: हार्डवेयर से तेज़ी लाने वाला वीडियो एन्कोडर, जो 720 पिक्सल के रॉ वीडियो को 30 हर्ट्ज़ या इससे बेहतर फ़्रीक्वेंसी पर H.264/AVC में एन्कोड कर सकता है
- YouTube ऐप्लिकेशन का इंस्टॉल किया गया वर्शन: 13.02 या इसके बाद का वर्शन
मोबाइल लाइव इंटेंट की खास बातें
YouTube मोबाइल लाइव स्ट्रीमिंग फ़्लो से लिंक करने के लिए, आपका Android ऐप्लिकेशन एक इंटेंट लॉन्च करता है. Intent, YouTube ऐप्लिकेशन में ऐक्टिविटी शुरू करके, लाइव स्ट्रीमिंग की प्रोसेस शुरू करता है.
इंटेंट फ़ॉर्मैट
मोबाइल से लाइव स्ट्रीम करने के लिए, कस्टम Action स्ट्रिंग का इस्तेमाल किया जाता है. इससे YouTube ऐप्लिकेशन में लाइव स्ट्रीम करने की सुविधा पर पहुंचा जा सकता है. इसमें, मोबाइल के लिए YouTube ऐप्लिकेशन के पैकेज का नाम भी बताया जाता है.
- कार्रवाई:
"
com.google.android.youtube.intent.action.CREATE_LIVE_STREAM" - पैकेज:
"
com.google.android.youtube"
इंटेंट एक्स्ट्रा
YouTube ऐप्लिकेशन का सेटअप फ़्लो, स्ट्रीम के कॉन्फ़िगरेशन को मैनेज करता है. यहां दिए गए इंटेंट एक्स्ट्रा, लाइव स्ट्रीम से जुड़े पैरामीटर सेट करते हैं:
| पैरामीटर | |
|---|---|
| Intent.EXTRA_REFERRER | ज़रूरी है. यह पैरामीटर, लाइव स्ट्रीमिंग की ऐक्टिविटी को लॉन्च करने वाले ऐप्लिकेशन को दिखाने वाला यूआरआई तय करता है. यह वैल्यू, पैकेज के नाम के साथ android-app: scheme फ़ॉर्मैट में होनी चाहिए. इस वैल्यू से, सटीक एट्रिब्यूशन और अकाउंटिंग की जा सकती है. |
| Intent.EXTRA_SUBJECT | Optional. इस पैरामीटर से, लाइव स्ट्रीम के बारे में टेक्स्ट के तौर पर जानकारी मिलती है. इसे इंटेंट एक्स्ट्रा बंडल में स्ट्रिंग के तौर पर रखा जाता है. इस वैल्यू का इस्तेमाल, स्ट्रीम में ब्रैंड मैसेजिंग को एनोटेट करने के लिए किया जा सकता है. जैसे, "डिवाइस से लाइव स्ट्रीम किया गया". |
लाइव स्ट्रीमिंग का फ़्लो लॉन्च करना
अपने Android ऐप्लिकेशन से मोबाइल लाइव गतिविधि शुरू करने और यह पुष्टि करने के लिए कि डिवाइस इसके साथ काम करता है या नहीं, ये दो चरण पूरे करें.
पहला चरण: यह देखना कि आपके डिवाइस पर यह सुविधा काम करती है या नहीं
आपके क्लाइंट को सबसे पहले यह पुष्टि करनी चाहिए कि मोबाइल लाइव इंटेंट को लॉन्च किया जा सकता है. इसके लिए, यह पुष्टि करनी होगी कि डिवाइस पर YouTube ऐप्लिकेशन इंस्टॉल है और YouTube ऐप्लिकेशन का वर्शन, लाइव स्ट्रीमिंग के साथ काम करता है. यहां दिए गए कोड सैंपल में, ऐसा करने के दो तरीके बताए गए हैं:
canResolveMobileLiveIntentमेथड से यह पुष्टि होती है कि डिवाइस पर, मोबाइल लाइव इंटेंट की सुविधा काम करती है या नहीं.validateMobileLiveIntent,if-elseस्टेटमेंट के संदर्भ मेंcanResolveMobileLiveIntentतरीके को कॉल करता है.- अगर डिवाइस पर इंटेंट काम करता है, तो डिवाइस पर लाइव स्ट्रीम का फ़्लो लॉन्च किया जा सकता है.
- अगर डिवाइस में इंटेंट काम नहीं करता है, तो डिवाइस उपयोगकर्ता को YouTube ऐप्लिकेशन इंस्टॉल या अपग्रेड करने के लिए कह सकता है.
private boolean canResolveMobileLiveIntent(Context context) {
Intent intent = new Intent("com.google.android.youtube.intent.action.CREATE_LIVE_STREAM")
.setPackage("com.google.android.youtube");
PackageManager pm = context.getPackageManager();
List<ResolveInfo> resolveInfo =
pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
return resolveInfo != null && !resolveInfo.isEmpty();
}
private void validateMobileLiveIntent(Context context) {
if (canResolveMobileLiveIntent(context)) {
// Launch the livestream Activity
} else {
// Prompt user to install or upgrade the YouTube app
}
}
Android 11 (एपीआई लेवल 30) या इसके बाद के वर्शन को टारगेट करने वाले ऐप्लिकेशन को AndroidManifest.xml फ़ाइल में, पैकेज दिखने की सुविधा से जुड़ी ज़रूरी शर्तों के बारे में बताना होगा. इससे PackageManager, YouTube ऐप्लिकेशन के बारे में क्वेरी कर सकता है:
<queries>
<package android:name="com.google.android.youtube" />
<intent>
<action android:name="com.google.android.youtube.intent.action.CREATE_LIVE_STREAM" />
</intent>
</queries>
दूसरा चरण: लाइव स्ट्रीम की गतिविधि लॉन्च करना
लाइव स्ट्रीमिंग शुरू करने के लिए, आपका क्लाइंट ऐप्लिकेशन एक इंटेंट बनाता है और उसे लॉन्च करता है. इसके बारे में यहां दिए गए कोड सैंपल में बताया गया है:
private Intent createMobileLiveIntent(Context context, String description) {
Intent intent = new Intent("com.google.android.youtube.intent.action.CREATE_LIVE_STREAM")
.setPackage("com.google.android.youtube");
Uri referrer = new Uri.Builder()
.scheme("android-app")
.appendPath(context.getPackageName())
.build();
intent.putExtra(Intent.EXTRA_REFERRER, referrer);
if (!TextUtils.isEmpty(description)) {
intent.putExtra(Intent.EXTRA_SUBJECT, description);
}
return intent;
}
private void startMobileLive(Context context) {
Intent mobileLiveIntent = createMobileLiveIntent(context, "Streaming via ...");
startActivity(mobileLiveIntent);
}