Laravel HLS — це пакет для створення плейлистів і сегментів для HTTP Live Streaming (HLS) з шифруванням AES-128. HLS — адаптивний протокол потокового відео на основі HTTP, розроблений Apple, який підтримується на більшості пристроїв. Він має перевагу в адаптації якості (та обсягу) відео відповідно до швидкостей мережі.
Цей пакет дозволяє легко додати процес конвертації в HLS до моделі Eloquent. Для цього потрібно додати трейт ConvertToHls до вашої моделі, що містить відео. Трейт реагує на події created та updated моделі, відправляючи конвертацію HLS на обробку в чергу:
namespace App\Models;
use AchyutN\LaravelHLS\Traits\ConvertsToHls;
use Illuminate\Database\Eloquent\Model;
class Video extends Model
{
use ConvertsToHls;
}
// Створюємо об'єкт відео
$video = Video::create([/* ... */]);
При створенні об'єкта пакет конвертує відеофайл у формат HLS за допомогою FFMpeg.
Щоб отримати плейлист HLS для моделі, ви можете скористатися наступним кодом, описаним у документації, для виклику маршруту hls.playlist:
use App\Models\Video;
// Отримуємо HLS плейлист для відео
$video = Video::findOrFail($id);
$playlistUrl = route('hls.playlist', ['model' => 'video', 'id' => $video->id]);
Цей пакет має зручну організацію і є чудовим прикладом для навчання, якщо ви працюєте з PHP та FFMpeg. Ви можете ознайомитися з laravel-hls на GitHub.
Встановіть його у своєму проекті Laravel >= 10.x за допомогою Composer:
composer require achyutn/laravel-hls
php artisan vendor:publish --provider="AchyutN\LaravelHLS\HLSProvider" --tag="hls-config"
Необхідно налаштувати псевдоніми моделі, які використовуватимуть конвертацію HLS. Для деталей використання ознайомтеся з документацією проекту.
PHP 8.5 обіцяє безліч нових можливостей, таких як оператор Pipe, функції `array_first()` та `array_last()`, а також нове розширення URI. Чи готові ви дізнатися, як ці функції можуть спростити вашу розробку? Читайте далі, щоб дізнатися більше про ці захоплюючі нововведення
Ви знали, що в одному додатку Laravel можна реалізувати кілька API? У нашій статті ви дізнаєтеся, як за допомогою Scramble легко документувати різні версії API та налаштувати доступ до документації, щоб зробити її публічною або приватною. Читайте далі, щоб дізнатися більше
У сучасній веб-розробці аутентифікація є ключовою для захисту додатків і даних користувачів. Дізнайтеся, як модуль nuxt-sanctum-authentication спростить інтеграцію між Nuxt 3 та Laravel Sanctum, забезпечуючи надійний і зручний спосіб реалізації аутентифікації для вашого проєкту