مواد پر جائیں

Kick کلپس اور VODs: لنک ڈاؤن لوڈر کو کیا بتاتا ہے

Kick آپ کے پیسٹ کیے گئے لنک کے مطابق تین مختلف سوالوں کے جواب دیتا ہے: ایک کلپ، ایک پرانا براڈکاسٹ، یا ایسا چینل جو ابھی لائیو ہو۔ ڈاؤن لوڈر پہلے URL پڑھتا ہے اور صحیح چیز چنتا ہے۔

Kick کا اپنا ایڈریس ڈھانچہ سب سے صاف نقشہ ہے کہ آپ کے ہاتھ میں کیا ہے۔ کلپ ایک مختصر، ایڈٹ شدہ لمحہ ہے۔ VOD ایک مکمل پرانا براڈکاسٹ ہے۔ چینل صفحہ نہ یہ ہے نہ وہ، اور اگر اسٹریمر اُس وقت لائیو ہو تو ڈاؤن لوڈ کرنے کو کچھ نہیں — لائیو اسٹریم کا کوئی اختتام نہیں، اس لیے کوئی فائل بھی نہیں۔

تین لنکس، اور ہر ایک کیا بنتا ہے

لنک کی شکلریزولور کیا کرتا ہے
kick.com/<channel>/clips/clip_…کلپ API پڑھتا ہے اور کلپ کی اصل کوالٹی واپس دیتا ہے۔
kick.com/<channel>/videos/<id> اور /video/<id>ویڈیو API پڑھتا ہے اور VOD کی ماسٹر پلے لسٹ کے ہر ورژن کی فہرست دیتا ہے۔
kick.com/<channel>چینل کے حالیہ VODs کی فہرست دیتا ہے؛ لائیو چینل اس کے بجائے live جواب دیتا ہے۔
صرف ایک کلپ آئی ڈیپہلے چینل مانگتا ہے (need_channel) کیونکہ Kick کی کلپ API کو دونوں چاہیے۔

کلپ آئی ڈی کی ایک مقرر شکل ہوتی ہے — clip_ کے بعد ULID نما کوڈ — اس لیے ریزولور اسے بغیر کسی نیٹ ورک کال کے پہچان سکتا ہے۔ صرف ننگی آئی ڈی کافی نہیں؛ Kick کی API راستے میں چینل چاہتی ہے، اسی لیے اکیلے پیسٹ کی گئی آئی ڈی مزید مانگ کر واپس آتی ہے۔

کوالٹیز کہاں سے آتی ہیں

VOD کے لیے Kick ایک HLS ماسٹر پلے لسٹ شائع کرتا ہے: ایک چھوٹی فائل جس میں ہر ورژن درج ہوتا ہے، ہر ایک اپنے ریزولوشن، بینڈوڈتھ اور فریم ریٹ کے ساتھ۔ ریزولور صرف وہی ماسٹر پڑھتا ہے، اور کچھ نہیں — نہ فریگمنٹس ڈاؤن لوڈ کرتا ہے، نہ Kick سے کوئی ملائی ہوئی فائل مانگتا ہے، کیونکہ Kick ایسی کوئی نہیں دیتا۔

کلپس آسان ہیں: ان میں عام طور پر ایک ہی فائل اُس کوالٹی پر ہوتی ہے جس پر کلپ کاٹا گیا تھا، اسی لیے کلپ ڈاؤن لوڈ میں شاذ ہی کچھ چننے کو کہا جاتا ہے۔

لائیو اسٹریمز کیوں مسترد ہوتی ہیں

لائیو اسٹریم کوئی فائل نہیں، ایک چلتی ہوئی کھڑکی ہے۔ Kick لائیو چینل کو تین مختلف جگہوں پر لائیو بتاتا ہے — VOD آبجیکٹ، چینل کی ویڈیو فہرست اور خود چینل صفحہ — اور ریزولور تینوں کو ایک ہی جواب میں بدل دیتا ہے: live۔ اس کے بجائے کوئی کلپ یا VOD آزمائیں۔

دو دیگر حالتیں غلطیاں لگتی ہیں مگر نہیں ہیں: processing کا مطلب ہے براڈکاسٹ چند منٹ پہلے ختم ہوا اور Kick نے VOD کاٹنا مکمل نہیں کیا، اور no_source کا مطلب VOD ہٹا دیا گیا یا میعاد ختم ہو گئی۔ دونوں Kick کی حالت ہیں، ڈاؤن لوڈ کی ناکامی نہیں۔

کچھ محفوظ نہیں ہوتا

Kick کے CDNs access-control-allow-origin: * بھیجتے ہیں، اس لیے براؤزر فائل سیدھی پڑھ سکتا ہے۔ ڈاؤن لوڈ صفحے میں چلتا ہے، Kick کے ایج سے سیدھا آپ کی ڈسک تک؛ ریزولور نے صرف میٹا ڈیٹا ہینڈل کیا۔ کچھ دوبارہ انکوڈ، واٹر مارک یا محفوظ نہیں کیا جاتا۔

ایک عملی بات: لمبے VODs ڈیسک ٹاپ براؤزر پر محفوظ کرنا بہتر ہے، جہاں فائل سیدھی ڈسک پر اسٹریم ہوتی ہے۔ فون پر کئی گھنٹے کا براڈکاسٹ ڈاؤن لوڈ کے دوران میموری میں رکھا جاتا ہے، اور براؤزر فائل مکمل ہونے سے پہلے ہار مان سکتا ہے۔

مختصر بات

سوالات

کیا میں Kick لائیو اسٹریم چلتے ہوئے ڈاؤن لوڈ کر سکتا ہوں؟

نہیں۔ لائیو اسٹریم کا نہ اختتام ہوتا ہے نہ فائل؛ Kick اسے لائیو بتاتا ہے اور ریزولور انکار کر دیتا ہے۔ براڈکاسٹ ختم ہونے اور Kick کے پروسیس مکمل کرنے کے بعد VOD لنک کام کرتا ہے۔

VODs میں کئی کوالٹیز کیوں ہوتی ہیں مگر کلپ میں صرف ایک؟

VOD کے ساتھ HLS ماسٹر پلے لسٹ آتی ہے جس میں Kick کا انکوڈ کردہ ہر ورژن ہوتا ہے، اس لیے ریزولور ہر ایک کی فہرست دے سکتا ہے۔ کلپ ایک ہی فائل سے کاٹا جاتا ہے، اس لیے عام طور پر وہی ایک کوالٹی دستیاب ہوتی ہے۔

`source` کوالٹی کا کیا مطلب ہے؟

یہ ماسٹر پلے لسٹ خود ہے، جو اُس وقت دی جاتی ہے جب انفرادی ورژنز پارس نہ ہو سکیں۔ ویڈیو وہی ہے، بس ہر ریزولوشن کی الگ تفصیل کے بغیر۔

اس مضمون کے ٹولز

تمام مضامین