Add TimeCode::fromSeconds method

This commit is contained in:
Romain Neutron 2013-06-25 18:19:15 +02:00
commit 3fa1ea1f4f
2 changed files with 48 additions and 0 deletions

View file

@ -63,4 +63,30 @@ class TimeCode
return new static($hours, $minutes, $seconds, $frames);
}
/**
* Creates timecode from number of seconds.
*
* @param float $seconds
*
* @return TimeCode
*/
public static function fromSeconds($quantity)
{
$minutes = $hours = $frames = 0;
$frames = round(100 * ($quantity - floor($quantity)));
$seconds = floor($quantity);
if ($seconds > 59) {
$minutes = floor($seconds / 60);
$seconds = $seconds % 60;
}
if ($minutes > 59) {
$hours = floor($minutes / 60);
$minutes = $minutes % 60;
}
return new static($hours, $minutes, $seconds, $frames);
}
}