From ffdbaa180683d6cd5209316b9fed8fbce6fc795c Mon Sep 17 00:00:00 2001 From: towards_a_new_leftypol Date: Sun, 30 Aug 2020 22:02:53 +0000 Subject: [PATCH] autoformat ffmpeg.php --- inc/lib/webm/ffmpeg.php | 114 ++++++++++++++++++++-------------------- 1 file changed, 57 insertions(+), 57 deletions(-) diff --git a/inc/lib/webm/ffmpeg.php b/inc/lib/webm/ffmpeg.php index 0747b420..51873530 100644 --- a/inc/lib/webm/ffmpeg.php +++ b/inc/lib/webm/ffmpeg.php @@ -1,65 +1,65 @@ 1, 'msg' => $config['error']['genwebmerror']); - $extension = pathinfo($ffprobe_out['format']['filename'], PATHINFO_EXTENSION); - if ($extension === 'webm') { - if ($ffprobe_out['format']['format_name'] != 'matroska,webm') - return array('code' => 2, 'msg' => $config['error']['invalidwebm']); - } elseif ($extension === 'mp4') { - if ($ffprobe_out['streams'][0]['codec_name'] != 'h264' && $ffprobe_out['streams'][1]['codec_name'] != 'aac') - return array('code' => 2, 'msg' => $config['error']['invalidwebm']); - } else { - return array('code' => 1, 'msg' => $config['error']['genwebmerror']); - } - if ((count($ffprobe_out['streams']) > 1) && (!$config['webm']['allow_audio'])) - return array('code' => 3, 'msg' => $config['error']['webmhasaudio']); - if (empty($ffprobe_out['streams'][0]['width']) || (empty($ffprobe_out['streams'][0]['height']))) - return array('code' => 2, 'msg' => $config['error']['invalidwebm']); - if ($ffprobe_out['format']['duration'] > $config['webm']['max_length']) - return array('code' => 4, 'msg' => sprintf($config['error']['webmtoolong'], $config['webm']['max_length'])); + global $board, $config; + if (empty($ffprobe_out)) + return array('code' => 1, 'msg' => $config['error']['genwebmerror']); + $extension = pathinfo($ffprobe_out['format']['filename'], PATHINFO_EXTENSION); + if ($extension === 'webm' && !stristr($ffprobe_out['format']['format_name'], 'mp4')) { + if ($ffprobe_out['format']['format_name'] != 'matroska,webm') + return array('code' => 2, 'msg' => $config['error']['invalidwebm']."error 1"); + } elseif ($extension === 'mp4') { + if ($ffprobe_out['streams'][0]['codec_name'] != 'h264' && $ffprobe_out['streams'][1]['codec_name'] != 'aac') + return array('code' => 2, 'msg' => $config['error']['invalidwebm']."error 2"); + } else { + return array('code' => 1, 'msg' => $config['error']['genwebmerror']."error 3"); + } + if ((count($ffprobe_out['streams']) > 1) && (!$config['webm']['allow_audio'])) + return array('code' => 3, 'msg' => $config['error']['webmhasaudio']."error 4"); + if (empty($ffprobe_out['streams'][0]['width']) || (empty($ffprobe_out['streams'][0]['height']))) + return array('code' => 2, 'msg' => $config['error']['invalidwebm']."error 5"); + if ($ffprobe_out['format']['duration'] > $config['webm']['max_length']) + return array('code' => 4, 'msg' => sprintf($config['error']['webmtoolong'], $config['webm']['max_length'])."error 6"); } function make_webm_thumbnail($filename, $thumbnail, $width, $height, $duration) { - global $board, $config; - $filename = escapeshellarg($filename); - $thumbnailfc = escapeshellarg($thumbnail); // Should be safe by default but you - // can never be too safe. - $width = escapeshellarg($width); - $height = escapeshellarg($height); // Same as above. - $ffmpeg = $config['webm']['ffmpeg_path']; - $ret = 0; - $ffmpeg_out = array(); - exec("$ffmpeg -strict -2 -ss " . floor($duration / 2) . " -i $filename -v quiet -an -vframes 1 -f mjpeg -vf scale=$width:$height $thumbnailfc 2>&1", $ffmpeg_out, $ret); - // Work around for https://trac.ffmpeg.org/ticket/4362 - if (filesize($thumbnail) === 0) { - // try again with first frame - exec("$ffmpeg -y -strict -2 -ss 0 -i $filename -v quiet -an -vframes 1 -f mjpeg -vf scale=$width:$height $thumbnailfc 2>&1", $ffmpeg_out, $ret); - clearstatcache(); - // failed if no thumbnail size even if ret code 0, ffmpeg is buggy - if (filesize($thumbnail) === 0) { - $ret = 1; - } - } - return $ret; + global $board, $config; + $filename = escapeshellarg($filename); + $thumbnailfc = escapeshellarg($thumbnail); // Should be safe by default but you + // can never be too safe. + $width = escapeshellarg($width); + $height = escapeshellarg($height); // Same as above. + $ffmpeg = $config['webm']['ffmpeg_path']; + $ret = 0; + $ffmpeg_out = array(); + exec("$ffmpeg -strict -2 -ss " . floor($duration / 2) . " -i $filename -v quiet -an -vframes 1 -f mjpeg -vf scale=$width:$height $thumbnailfc 2>&1", $ffmpeg_out, $ret); + // Work around for https://trac.ffmpeg.org/ticket/4362 + if (filesize($thumbnail) === 0) { + // try again with first frame + exec("$ffmpeg -y -strict -2 -ss 0 -i $filename -v quiet -an -vframes 1 -f mjpeg -vf scale=$width:$height $thumbnailfc 2>&1", $ffmpeg_out, $ret); + clearstatcache(); + // failed if no thumbnail size even if ret code 0, ffmpeg is buggy + if (filesize($thumbnail) === 0) { + $ret = 1; + } + } + return $ret; }