This commit is contained in:
shimon
2023-04-16 11:43:35 +03:00
parent 741a87f464
commit d6e1d0f6f6
11 changed files with 20 additions and 15 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+8
View File
@@ -826,6 +826,7 @@ App::get('/v1/videos/:videoId/outputs/:output')
->inject('mode')
->action(function (string $videoId, string $output, Response $response, Database $dbForProject, string $mode) {
$dbStartTime = microtime(true);
$video = Authorization::skip(fn() => $dbForProject->getDocument('videos', $videoId));
if ($video->isEmpty()) {
@@ -850,6 +851,9 @@ App::get('/v1/videos/:videoId/outputs/:output')
Query::equal('status', ['ready']),
]));
$dbEnd = microtime(true) - $dbStartTime;
var_dump('$dbEnd = ' . $dbEnd);
$prosessStart = microtime(true);
$_renditions = $_subtitles = [];
if ($output === 'hls') {
@@ -903,6 +907,10 @@ App::get('/v1/videos/:videoId/outputs/:output')
->setContentType('application/x-mpegurl')
->send($template->render(false))
;
// $prosessEnd = microtime(true) - $prosessStart;
// var_dump('$dbEnd = ' . $dbEnd);
// var_dump('$prosessEnd = ' . $prosessEnd);
} else {
$adaptationId = 0;
foreach ($renditions as $rendition) {
+1 -1
View File
@@ -1,7 +1,7 @@
#EXTM3U
#EXT-X-VERSION:3
<?php foreach ($this->getParam('audios', []) as $audio):?>
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="group_audio"<?php if($audio['name'] !== null):?>,NAME="<?php echo $audio['name'];?>"<?php endif;?>,DEFAULT=<?php echo $audio['default']; ?><?php if($audio['language'] !== null):?>,LANGUAGE="<?php echo $audio['language'];?>"<?php endif;?><?php if($audio['uri'] !== null):?>,URI="<?php echo $audio['uri'];?>"<?php endif;?><?php echo PHP_EOL?>
#EXT-X-MEDIA:TYPE=AUDIO,GROUP-ID="group_audio"<?php if($audio['name'] !== null):?>,NAME="<?php echo $audio['name'];?>"<?php endif;?>,AUTOSELECT=YES,FORCED=NO,DEFAULT=<?php echo $audio['default']; ?><?php if($audio['language'] !== null):?>,LANGUAGE="<?php echo $audio['language'];?>"<?php endif;?><?php if($audio['uri'] !== null):?>,URI="<?php echo $audio['uri'];?>"<?php endif;?><?php echo PHP_EOL?>
<?php endforeach;?>
<?php foreach ($this->getParam('subtitles', []) as $subtitle):?>
#EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subs",NAME="<?php echo $this->escape($subtitle['name']); ?>",DEFAULT=<?php echo $subtitle['default']; ?>,AUTOSELECT=YES,FORCED=NO,LANGUAGE="<?php echo $this->escape($subtitle['code']); ?>",URI="<?php echo $subtitle['uri']; ?>"<?php echo PHP_EOL?>
+3 -3
View File
@@ -1,10 +1,10 @@
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-ALLOW-CACHE:YES
#EXT-X-TARGETDURATION:<?php echo $this->getParam('targetDuration', 0)?><?php echo PHP_EOL?>
#EXT-X-MEDIA-SEQUENCE:0
<?php foreach ($this->getParam('segments', []) as $segment): ?>
#EXTINF:<?php echo $segment['duration']; ?><?php echo PHP_EOL?>
<?php echo $segment['url']; ?><?php echo PHP_EOL?>
#EXTINF:<?php echo $segment['duration']; ?>,<?php echo PHP_EOL?>
<?php echo $segment['url']; ?><?php echo PHP_EOL?>
<?php endforeach; ?>
#EXT-X-ENDLIST
+1 -4
View File
@@ -551,8 +551,7 @@ class VideosV1 extends Worker
'-force_key_frames', 'expr:gte(t,n_forced*2)' //enforce strict key frame
];
$segmentSize = 10;
$segmentSize = 4;
if ($this->args['output'] === self::OUTPUT_DASH) {
$media->dash()
->setFormat($format)
@@ -564,7 +563,6 @@ class VideosV1 extends Worker
}
$hls = $media->hls();
foreach ($subtitles as $subtitle) {
$sub = new HLSSubtitle($subtitle['path'], $subtitle['name'], $subtitle['code']);
$sub->default();
@@ -573,7 +571,6 @@ class VideosV1 extends Worker
$hls->setFormat($format)
->setHlsTime($segmentSize)
->setHlsAllowCache(false)
->addRepresentation($representation)
->setAdditionalParams($additionalParams)
->save($this->outPath);
+1 -1
View File
@@ -87,7 +87,7 @@ services:
- ./dev:/usr/src/code/dev
- ./dev:/usr/local/dev
- ./tests/tmp:/tmp
- ./vendor/utopia-php/framework:/usr/src/code/vendor/utopia-php/framework
- ./vendor/utopia-php/storage:/usr/src/code/vendor/utopia-php/storage
depends_on:
- mariadb
- redis