سلام دوستان
نیاز به این داریم که دقیقن مثل همین وبسایت، ویدیو استریم کنیم. تعداد ویدیو ها زیاد هست. یک یا چند کیفیت بودنش فعلن مهم نیست.
بک سایت با لاراول API هستش و فرانت با انگولار هر دو هم آخرین ورژن.
برای این کار لطف میکنین راهنمایی کنین؟
ببینید آخه شما با یک مدرسه طرف حساب هستید.
راه های زیادی هست.
ولی از یک طرف وقت زیادی باید صرف کنید . از یک طرف هم اونها متوجه زحمت شما نیستن 😀
همین m3u براشون زیاد هم هست
ولی خیلی دلم برای اون بچه ای میسوزه که باید برای هربار تماشا کردن اون همه اینترنت مصرف کنه
1- برای بروزر ها:
فایل m3u8 یک نوع پلی لیست هست برای خوندن تکه های یک فایل
شما میتونید یک سیستم دیگه مثل m3u8 بسازید، طوری که یک پلی لیست داشته باشید و داخل اون تکه های فایل (تکه هایی با encrypt خودتون) رو وارد کنید (خیلی encrypt خاصی نیاز نیست و zip کردن می تونه کافی باشه) بعد روی بروزر این تکه های فایل رو تک تک دانلود کنید و بعد از decrypt کردن داخل یک circular buffer جمع کنید و وقتی circular buffer شما تا حد کافی پر شد دیتای داخلش رو به سمت پلیر بفرستید (همزمان از طرفی که داره دانلود میشه پر میشه و از طرفی هم که داره برای پلیر فرستاده میشه خالی میشه)
circular buffer
circular buffer
2- اپ موبایل:
توی اندروید همچین آدرسی برای هر برنامه وجود داره که فقط برای همون برنامه دسترسی داره .. میتونید فیلم ها رو اونجا بریزید
/data/data/your.package.name/files/
توی ios هم هر اپی فقط به فایل های خودش دسترسی داره.
می تونید از همون circular buffer هم اینجا استفاده کنید.
3- اپ دسکتاپ و موبایل
یا این که میتونید برای همه پلتفرم ها از یک encrypt سبک برای فایل ها استفاده کنید که فقط داخل اپ شما خونده بشن.
می تونید از همون circular buffer هم اینجا استفاده کنید.
ولی این کار ها برای یک مدرسه می ارزه؟
استریم واقعی نیست 🙏، یعنی کسی اونور به صورت زنده چیزی رو برای شما ارسال نمی کنه .. فقط داره فایل رو به صورت چانک چانک دانلود می کنه برای همین راحت نمیشه دانلود کرد.
توی این سایت از روش M3U استفاده کردن برای پخش ویدئو ها
M3U برای استریم ساخته شده ، ,ولی realtime نیست و تاخیر زیادی می تونه داشته باشه. برای همین برای استریم هایی مثل تماس صوتی یا تصویری مناسب نیست. چون استریم اصلی که به سمت سرور فرستاده میشه را روی سرور به صورت فایل یا بافر ذخیره می کنه و کلاینت ها هر چند ثانیه درخواست دانلود یک قسمت از اون ویدئوی ذخیره شده رو میدن.
حالا این سایت برای این که ویدئو ها دانلود نشن اومده از M3U استفاده کرده و قصدش استریم نبوده .
پلیر m3u برای انگولار
اگه استریم لحظه ای و بدون تاخیر نیاز دارید بهتره از webrtc یا rtmp یا rtsp استفاده کنید.
حالا دانلود کردن ویدئو های این سایت (یا هر سایتی که با m3u داره پلی می کنه مثل این سایت های ایرانی پخش فیلم) هم کار سختی نیست:
ffmpeg -i http://....m3u8 -c copy roocket.mp4
ممنونم، خیلی کامل و خوب توضیح دادین.
برای سایت و PWA که فیلم آموزشی برای مدرسه پخش میکنه، به نظرتون این روش مناسبه؟
خپ هدف شما چیه؟ میخواید جلوی دانلود رو بگیرید؟
میخواید مثل تلویزیون سر تایم خاصی هر فیلم رو پخش کنید؟
جلوی دانلود رو بگیریم، زودتر از دانلود کامل پخش کنیم، حتا اگر بشه تو PWA دانلود کتیم و فقط از طریق اپ پخش بشه
ببینید آخه شما با یک مدرسه طرف حساب هستید.
راه های زیادی هست.
ولی از یک طرف وقت زیادی باید صرف کنید . از یک طرف هم اونها متوجه زحمت شما نیستن 😀
همین m3u براشون زیاد هم هست
ولی خیلی دلم برای اون بچه ای میسوزه که باید برای هربار تماشا کردن اون همه اینترنت مصرف کنه
1- برای بروزر ها:
فایل m3u8 یک نوع پلی لیست هست برای خوندن تکه های یک فایل
شما میتونید یک سیستم دیگه مثل m3u8 بسازید، طوری که یک پلی لیست داشته باشید و داخل اون تکه های فایل (تکه هایی با encrypt خودتون) رو وارد کنید (خیلی encrypt خاصی نیاز نیست و zip کردن می تونه کافی باشه) بعد روی بروزر این تکه های فایل رو تک تک دانلود کنید و بعد از decrypt کردن داخل یک circular buffer جمع کنید و وقتی circular buffer شما تا حد کافی پر شد دیتای داخلش رو به سمت پلیر بفرستید (همزمان از طرفی که داره دانلود میشه پر میشه و از طرفی هم که داره برای پلیر فرستاده میشه خالی میشه)
circular buffer
circular buffer
2- اپ موبایل:
توی اندروید همچین آدرسی برای هر برنامه وجود داره که فقط برای همون برنامه دسترسی داره .. میتونید فیلم ها رو اونجا بریزید
/data/data/your.package.name/files/
توی ios هم هر اپی فقط به فایل های خودش دسترسی داره.
می تونید از همون circular buffer هم اینجا استفاده کنید.
3- اپ دسکتاپ و موبایل
یا این که میتونید برای همه پلتفرم ها از یک encrypt سبک برای فایل ها استفاده کنید که فقط داخل اپ شما خونده بشن.
می تونید از همون circular buffer هم اینجا استفاده کنید.
ولی این کار ها برای یک مدرسه می ارزه؟
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟