Files
2025-05-12 02:47:47 -03:00

114 lines
3.9 KiB
PHP

<?php
declare(strict_types=1);
use App\Enums\Http\StreamingMethod;
return [
/*
|--------------------------------------------------------------------------
| Video Disks
|--------------------------------------------------------------------------
|
| The filesystem disks where videos are hosted. By default, it is assumed
| that the default video disk is an S3-like bucket.
|
*/
'default_disk' => env('VIDEO_DISK_DEFAULT', 'videos'),
'disks' => explode(',', env('VIDEO_DISKS', [])),
/*
|--------------------------------------------------------------------------
| Video Domain
|--------------------------------------------------------------------------
|
| These values represent the base URL that videos are streamed from.
| It is most likely that only one of these values should be set.
| If videos are streamed from a subdomain, set VIDEO_URL and leave VIDEO_PATH null.
| Ex: v.animethemes.test
| If videos are NOT streamed from a subdomain, set VIDEO_PATH and leave VIDEO_URL null.
| Ex: animethemes.test/video
|
*/
'url' => env('VIDEO_URL'),
'path' => env('VIDEO_PATH'),
/*
|--------------------------------------------------------------------------
| Video Rate Limiter
|--------------------------------------------------------------------------
|
| This value represents the number of requests permitted to stream video per minute.
| If set to a value less than or equal to zero, the limiter shall be unlimited.
| If set to a value greater than 0, the limiter shall restrict by that value.
|
*/
'rate_limiter' => (int) env('VIDEO_RATE_LIMITER', -1),
/*
|--------------------------------------------------------------------------
| Video Streaming
|--------------------------------------------------------------------------
|
| These values represent the method by which video is streamed.
| The first supported method of streaming is through a streamed response ("response").
| The second supported method of streaming is through a Nginx internal redirect ("nginx").
| A Nginx internal redirect requires a URI to match the location block.
|
*/
'streaming_method' => env('VIDEO_STREAMING_METHOD', StreamingMethod::RESPONSE->value),
'nginx_redirect' => env('VIDEO_NGINX_REDIRECT', '/video_redirect/'),
/*
|--------------------------------------------------------------------------
| Video Scripts
|--------------------------------------------------------------------------
|
| Scripts represent the encoding script used to produce a video.
| Generally, a script file will be a list of FFmpeg commands
| to be executed in a target runtime environment.
|
*/
'script' => [
/*
|--------------------------------------------------------------------------
| Script Disk
|--------------------------------------------------------------------------
|
| The filesystem disk where video scripts are hosted. By default, it is assumed
| that video scripts are hosted in an S3-like bucket.
|
*/
'disk' => env('SCRIPT_DISK', 'scripts'),
/*
|--------------------------------------------------------------------------
| Script Domain
|--------------------------------------------------------------------------
|
| These values represent the base URL that video scripts are downloaded from.
| It is most likely that only one of these values should be set.
| If scripts are downloaded from a subdomain, set SCRIPT_URL and leave SCRIPT_PATH null.
| Ex: script.animethemes.test
| If scripts are NOT downloaded from a subdomain, set SCRIPT_PATH and leave SCRIPT_URL null.
| Ex: animethemes.test/videoscript
|
*/
'url' => env('SCRIPT_URL'),
'path' => env('SCRIPT_PATH'),
],
];