ساخت صفحه پخش خودکار و آنلاین ویدیو و فیلم با PHP

مسیح دیندار
مدیریت
عضو شده: 2021-04-12 14:23:35
2021-05-23 08:50:51

پخش انلاین ویدیو و فیلم و در کل فایل های تصویری یکی از امکانات مورد نیاز سایت های فیلم و سریال است که می توان این قابلیت را به کاربر ارائه کرد که علاوه بر دانلود ویدیو با لینک مستقیم، قابلیت دیدن و پخش انلاین ویدیوها را در مرورگرشان داشته باشند. قابلیتی که اکثر سایت های حرفه ای به کاربرانشان ارائه کرده اند.

اینکار را می توان به دو صورت انجام:

  1. قرار دادن پلیر HTML در مطلب و اجازه به کاربری برای دیدن فیلم در همان صفحه از سایت.
  2. ساختن یک صفحه مجزا برای پخش فیلم.

 

کد پخش فیلم در مطلب

برای پخش فیلم در همان مطلب، می توانید از کد HTML مربوط به پلیر ویدیو استفاده کنید که تمامی مرورگرها کتابخانه ویدیوپلیر را در خود دارند بنابراین تنها کاری که باید بکنیم قرار دادن کد زیر در بخش "محتوای مطلب" است. در ادیتور (ویرایشگر) بخش افزودن نوشته جدید سایتتان گزینه دیدن سورس کد HTML را کلیک کنید و در قسمت باز شده این کد را قرار دهید:

<video controls autoplay id="player" tabindex="0" loop="loop" width="100%" preload="none">
<source src="https://talkina.ir/yourvideo.mp4" type="video/mp4">
</video>

در کد بالا فقط باید آدرس مستقیم فیلم مورد نظرتان را جایگزین https://talkina.ir/yourvideo.mp4 نمایید. شما می توانید سایر فرمت ها را نیز استفاده کنید. مثلا فرمت های .mkv یا .avi و...

 

ساختن صفحه مجزا برای پخش ویدیو

برای ساختن یک صفحه با میزان شخصی سازی بسیار بالا و حتی شخصی سازی ویدیوپلیر و یا تغییر استایل های صفحه، باید این مراحل را طی کنید:

ابتدا یک فایل در روت سایت خود به نام m.php ایجاد کنید و کد زیر را داخل آن قرار دهید:

<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta charset="utf-8">
<meta name="theme-color" content="DodgerBlue">
<title>پخش آنلاین فیلم</title>
<style>
body {text-align: center;}
#talkina
{
    max-width:100%;
    min-height:200px;
    max-height: 100%;
}
	</style>
</head>
<body>
<video controls autoplay id="talkina" tabindex="0" loop="loop" width="100%">
<source src="<?php echo $_GET['url']; ?>" type="video/mp4">
</video>
</body>
</html>

به صورتی که اگر آدرس https://yoursite.ir/m.php را (البته با دامنه خودتان) در مرورگر باز کنید، محتویات فایل نمایش داده شود. اگر فایل به خوبی با آدرس ذکر شده نمایش داده شد، مرحله اول را درست انجام داده اید!

مرحله بعد لینک دادن به این صفحه است. فایلی که ایجاد کردیم، لینک فیلمی که قرار است نمایش داده شود را درون آدرس بار پیدا خواهد کرد! پس باید لینکی ایجاد کنیم که آدرس فیلم هم داخل آن باشد و زمانی که کاربر روی آن کلیک کند، ویدیوپلیر ما لینک موجود در آدرس را پخش کند.

برای اینکار، در هنگام نوشتن، یک بخشی با عنوان "پخش آنلاین فیلم" یا هر چیزی که می خواهید، ایجاد کنید و لینک آن را به این صورت وارد کنید:

https://yoursite.ir/m.php?url=https://talkina.ir/video.mp4

بخش اول آدرس کامل فایلی که ایجاد کردید را باید وارد کنید. در قسمت میانی این لینک، عبارت ?url= مشاهده می کنید که شناسه و معرف این است که هر آدرسی بعد از آن وارد کرده ایم، لینک مستقیم فیلم ماست که باید داخل پلیر پخش شود. آدرس مستقیم فیلم را در لینک بالا جایگزین https://talkina.ir/video.mp4 کنید.

در نهایت یک همچین کدی باید داشته باشیم:

<a href="https://yoursite.ir/m.php?url=https://talkina.ir/video.mp4" rel="nofollow noopener" target="_blank">
   پخش آنلاین فیلم
</a>
Amir 2021
عضو
عضو شده: 2021-05-23 11:23:02
2021-05-23 11:28:37

 

ی سوال
چطوری میشه دکمه یا متن براش تعریف کرد ؟ یعنی مستقیم ویدیو نیاد 
اینجوری اگه 3 تا ویدیو توی متن داشته باشیم روی سرعت لود تاثیر داره ؟

<video controls autoplay id="player" tabindex="0" loop="loop" width="100%" preload="none"> <source src="https://talkina.ir/yourvideo.mp4" type="video/mp4"> </video>

مسیح دیندار
مدیریت
عضو شده: 2021-04-12 14:23:35
2021-05-23 11:33:33

@tak2021

نه، هر چقدر هم این کد استفاده بشه، تا زمانی که قابلیت preload غیرفعال باشه، مشکلی روی سرعت سایت نداره. زمانی که preload فعال باشه، ویدیوها به محض باز شدن اون صفحه دانلود میشن و برای پخش شدن اماده میشن. اما زمانی که این قابلیت غیرفعال باشه، ده تا ویدیوهم که باشه مشکلی پیش نمیاد.

می تونید یه تب بسازید و ویدیوهاتون رو داخل هر تب به صورت جداگانه قرار بدید.

Amir 2021
عضو
عضو شده: 2021-05-23 11:23:02
2021-09-10 08:19:54

پاسخ به: مسیح دیندار

سلام آقا ی سوال دیگه ، جسارتا چطوری میشه به این کد 

<video controls id="player" tabindex="0" loop="loop" width="100%" preload="none">

<source src="https://test.ir/720.mp4" type="video/mp4">

</video>

یه اسکرین تصویر یا دکمه پلیر مثل این اضافه کرد

مسیح دیندار
مدیریت
عضو شده: 2021-04-12 14:23:35
2021-09-10 18:32:54

پاسخ به: Amir 2021

سلام؛

برای تصویر، باید از خاصیت پوستر توی کد ویدئو استفاده کنید. مثل این:

<video width="320" height="240" poster="https://talkina.ir/images/poster.jpg" controls>
   <source src="https://talkina.ir/movie.mp4" type="video/mp4">
</video>

برای گذاشتن کلید وسط پلیر مثل تاکینا، باید از کتابخانه پلیر جدا استفاده کنید. ویدئوپلیر پیش فرض مرورگرها چنین قابلیتی ندارند اما اگه توی گوگل جستجو کنید JS Video Player انواع پلیرهای مختلفی برای استفاده وجود داره. در تاکینا از کتابخانه پلیر https://videojs.com استفاده کردیم که آپشن های زیادی داره.