From: Christian Weiske Date: Mon, 20 Nov 2023 16:04:42 +0000 (+0100) Subject: Fix E_NOTICES on php 8.2 X-Git-Url: https://git.cweiske.de/playVideoOnDreamboxProxy.git/commitdiff_plain/HEAD?hp=d0a86fefe25738c7e5b2d362032d35765bf29b50 Fix E_NOTICES on php 8.2 --- diff --git a/www/functions.php b/www/functions.php index 3e4e2be..95694e7 100644 --- a/www/functions.php +++ b/www/functions.php @@ -39,7 +39,7 @@ function getPageUrl() errorInput('Content type is not text/plain but ' . $_SERVER['CONTENT_TYPE']); } - $parts = parse_url($pageUrl); + $parts = parse_url($pageUrl ?? null); if ($parts === false) { errorInput('Invalid URL in POST data'); } else if (!isset($parts['scheme'])) { @@ -118,6 +118,10 @@ function extractVideoUrlFromJson($json) //dreambox 7080hd does not play VP9 video streams continue; } + if (strtolower(substr($format->vcodec, 0, 6)) == 'avc1.6') { + //dreambox DM7080 does not play H.264 High Profile + continue; + } if ($format->protocol == 'http_dash_segments') { //split up into multiple small files continue; @@ -133,12 +137,15 @@ function extractVideoUrlFromJson($json) //filter: best quality usort($safeFormats, function ($a, $b) { + $a->acodec = $a->acodec ?? null; + $b->acodec = $b->acodec ?? null; if ((($a->acodec != 'none') + ($b->acodec != 'none')) == 1) { return ($b->acodec != 'none') - ($a->acodec != 'none'); } return ($b->quality ?? 0) - ($a->quality ?? 0); }); foreach ($safeFormats as $format) { + //echo $format->format . ' | ' . $format->vcodec . ' | ' . $format->acodec . "\n"; $url = $format->url; break; }