You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.2 KiB
54 lines
1.2 KiB
<?php |
|
|
|
|
|
|
|
/** |
|
* @file |
|
* Ffmpeg wrapper class |
|
*/ |
|
|
|
/** |
|
* FFMpeg wrapper class for generating movie thumbnails |
|
* |
|
* This Class implements the methods defined in the STANDARD_QT content model |
|
*/ |
|
class Ffmpeg { |
|
|
|
/** |
|
* Default constructor |
|
*/ |
|
function Ffmpeg() { |
|
|
|
} |
|
|
|
/** |
|
* Extract a thumbnail from the movie |
|
* @param type $parameterArray |
|
* @param type $dsid |
|
* @param type $file |
|
* @param type $file_ext |
|
* @return type |
|
*/ |
|
function extract_thumbnail($parameterArray, $dsid, $file, $file_ext) { |
|
$defaults = array('ss' => '00:00:10', 's' => NULL); |
|
$params = array_merge($defaults, $parameterArray); |
|
$system = getenv('System'); |
|
$file_suffix = '_' . $dsid . '.' . $file_ext; |
|
$returnValue = TRUE; |
|
$output = array(); |
|
$size = ''; |
|
|
|
if ($params['s'] != NULL) { |
|
$size = ' -s ' . escapeshellarg($params['s']); |
|
} |
|
exec('ffmpeg -i ' . escapeshellarg($file) . ' -r 1 -ss ' . escapeshellarg($params['ss']) . ' ' . $size . ' -t 1 ' . escapeshellarg($file . $file_suffix)); |
|
|
|
if (!file_exists($file . $file_suffix)) { |
|
return FALSE; |
|
} |
|
|
|
$_SESSION['fedora_ingest_files']["$dsid"] = $file . $file_suffix; |
|
return TRUE; |
|
} |
|
|
|
}
|
|
|