public function PHPVideoToolkit::setVideoDimensions in Video 7
Same name and namespace in other branches
- 7.2 libraries/phpvideotoolkit/phpvideotoolkit.php5.php \PHPVideoToolkit::setVideoDimensions()
* Sets the video output dimensions (in pixels) * * @access public *
Parameters
mixed $width If an integer height also has to be specified, otherwise you can use one of the class constants: * PHPVideoToolkit::SIZE_SAS = Same as input source * PHPVideoToolkit::SIZE_SQCIF = 128 x 96 * PHPVideoToolkit::SIZE_QCIF = 176 x 144 * PHPVideoToolkit::SIZE_CIF = 352 x 288 * PHPVideoToolkit::SIZE_4CIF = 704 x 576 * PHPVideoToolkit::SIZE_QQVGA = 160 x 120 * PHPVideoToolkit::SIZE_QVGA = 320 x 240 * PHPVideoToolkit::SIZE_VGA = 640 x 480 * PHPVideoToolkit::SIZE_SVGA = 800 x 600 * PHPVideoToolkit::SIZE_XGA = 1024 x 768 * PHPVideoToolkit::SIZE_UXGA = 1600 x 1200 * PHPVideoToolkit::SIZE_QXGA = 2048 x 1536 * PHPVideoToolkit::SIZE_SXGA = 1280 x 1024 * PHPVideoToolkit::SIZE_QSXGA = 2560 x 2048 * PHPVideoToolkit::SIZE_HSXGA = 5120 x 4096 * PHPVideoToolkit::SIZE_WVGA = 852 x 480 * PHPVideoToolkit::SIZE_WXGA = 1366 x 768 * PHPVideoToolkit::SIZE_WSXGA = 1600 x 1024 * PHPVideoToolkit::SIZE_WUXGA = 1920 x 1200 * PHPVideoToolkit::SIZE_WOXGA = 2560 x 1600 * PHPVideoToolkit::SIZE_WQSXGA = 3200 x 2048 * PHPVideoToolkit::SIZE_WQUXGA = 3840 x 2400 * PHPVideoToolkit::SIZE_WHSXGA = 6400 x 4096 * PHPVideoToolkit::SIZE_WHUXGA = 7680 x 4800 * PHPVideoToolkit::SIZE_CGA = 320 x 200 * PHPVideoToolkit::SIZE_EGA = 640 x 350 * PHPVideoToolkit::SIZE_HD480 = 852 x 480 * PHPVideoToolkit::SIZE_HD720 = 1280 x 720 * PHPVideoToolkit::SIZE_HD1080 = 1920 x 1080 * @param integer $height * @return boolean
2 calls to PHPVideoToolkit::setVideoDimensions()
- PHPVideoToolkit::execute in libraries/
phpvideotoolkit/ phpvideotoolkit.php5.php - * Commits all the commands and executes the ffmpeg procedure. This will also attempt to validate any outputted files in order to provide * some level of stop and check system. * * @access public *
- PHPVideoToolkit::setVideoOutputDimensions in libraries/
phpvideotoolkit/ phpvideotoolkit.php5.php - * @access public * @depreciated *
File
- libraries/
phpvideotoolkit/ phpvideotoolkit.php5.php, line 1692
Class
Code
public function setVideoDimensions($width = PHPVideoToolkit::SIZE_SAS, $height = null) {
if ($height === null || $height === true) {
// validate input
if (!in_array($width, array(
self::SIZE_SAS,
self::SIZE_SQCIF,
self::SIZE_QCIF,
self::SIZE_CIF,
self::SIZE_4CIF,
self::SIZE_QQVGA,
self::SIZE_QVGA,
self::SIZE_VGA,
self::SIZE_SVGA,
self::SIZE_XGA,
self::SIZE_UXGA,
self::SIZE_QXGA,
self::SIZE_SXGA,
self::SIZE_QSXGA,
self::SIZE_HSXGA,
self::SIZE_WVGA,
self::SIZE_WXGA,
self::SIZE_WSXGA,
self::SIZE_WUXGA,
self::SIZE_WOXGA,
self::SIZE_WQSXGA,
self::SIZE_WQUXGA,
self::SIZE_WHSXGA,
self::SIZE_WHUXGA,
self::SIZE_CGA,
self::SIZE_EGA,
self::SIZE_HD480,
self::SIZE_HD720,
self::SIZE_HD1080,
))) {
return $this
->_raiseError('setVideoOutputDimensions_valid_format', array(
'format' => $format,
));
//<- exits
}
if ($width === self::SIZE_SAS) {
// and override is made so no command is added in the hope that ffmpeg will just output the source
if ($height === true) {
return true;
}
// get the file info
$info = $this
->getFileInfo();
if (isset($info['video']) === false || isset($info['video']['dimensions']) === false) {
return $this
->_raiseError('setVideoOutputDimensions_sas_dim');
}
else {
$width = $info['video']['dimensions']['width'] . 'x' . $info['video']['dimensions']['height'];
}
}
}
else {
$height_split = explode(' ', $height);
// check that the width and height are even
if ($width % 2 !== 0 || $height_split[0] % 2 !== 0) {
return $this
->_raiseError('setVideoOutputDimensions_valid_integer');
//<- exits
}
$width = $width . 'x' . $height_split[0];
}
$this
->addCommand('-s', $width);
if (isset($height_split) && count($height_split) > 1) {
$commands = $height_split;
array_shift($commands);
$commands = implode(' ', $commands);
preg_match_all('/-(\\S*)\\s(\\S*)/', $commands, $matches);
foreach ($matches[0] as $match) {
$command = explode(' ', $match);
if (count($command) == 2) {
$command[0] = preg_replace('/\\"/', '', $command[0]);
$command[1] = preg_replace('/\\"/', '', $command[1]);
$this
->addCommand($command[0], $command[1]);
}
}
}
return true;
}