CC-5065 : Playlist length is not built on actual cue in/out value
This commit is contained in:
parent
299dfdc18a
commit
a18fc87d97
2 changed files with 23 additions and 4 deletions
|
@ -488,7 +488,7 @@ SQL;
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($p_items as $ac) {
|
foreach ($p_items as $ac) {
|
||||||
Logging::info("Adding audio file {$ac[0]}");
|
//Logging::info("Adding audio file {$ac[0]}");
|
||||||
try {
|
try {
|
||||||
if (is_array($ac) && $ac[1] == 'audioclip') {
|
if (is_array($ac) && $ac[1] == 'audioclip') {
|
||||||
$res = $this->insertBlockElement($this->buildEntry($ac[0], $pos));
|
$res = $this->insertBlockElement($this->buildEntry($ac[0], $pos));
|
||||||
|
@ -658,7 +658,7 @@ SQL;
|
||||||
|
|
||||||
public function getFadeInfo($pos)
|
public function getFadeInfo($pos)
|
||||||
{
|
{
|
||||||
Logging::info("Getting fade info for pos {$pos}");
|
//Logging::info("Getting fade info for pos {$pos}");
|
||||||
|
|
||||||
$row = CcBlockcontentsQuery::create()
|
$row = CcBlockcontentsQuery::create()
|
||||||
->joinWith(CcFilesPeer::OM_CLASS)
|
->joinWith(CcFilesPeer::OM_CLASS)
|
||||||
|
@ -1275,8 +1275,10 @@ SQL;
|
||||||
$isBlockFull = false;
|
$isBlockFull = false;
|
||||||
|
|
||||||
while ($iterator->valid()) {
|
while ($iterator->valid()) {
|
||||||
|
|
||||||
$id = $iterator->current()->getDbId();
|
$id = $iterator->current()->getDbId();
|
||||||
$length = Application_Common_DateHelper::calculateLengthInSeconds($iterator->current()->getDbLength());
|
$fileLength = $iterator->current()->getCueLength();
|
||||||
|
$length = Application_Common_DateHelper::calculateLengthInSeconds($fileLength);
|
||||||
$insertList[] = array('id'=>$id, 'length'=>$length);
|
$insertList[] = array('id'=>$id, 'length'=>$length);
|
||||||
$totalTime += $length;
|
$totalTime += $length;
|
||||||
$totalItems++;
|
$totalItems++;
|
||||||
|
@ -1291,8 +1293,11 @@ SQL;
|
||||||
|
|
||||||
$sizeOfInsert = count($insertList);
|
$sizeOfInsert = count($insertList);
|
||||||
|
|
||||||
// if block is not full and reapeat_track is check, fill up more
|
// if block is not full and repeat_track is check, fill up more
|
||||||
while (!$isBlockFull && $repeat == 1 && $sizeOfInsert > 0) {
|
while (!$isBlockFull && $repeat == 1 && $sizeOfInsert > 0) {
|
||||||
|
Logging::debug("adding repeated tracks.");
|
||||||
|
Logging::debug("total time = " . $totalTime);
|
||||||
|
|
||||||
$randomEleKey = array_rand(array_slice($insertList, 0, $sizeOfInsert));
|
$randomEleKey = array_rand(array_slice($insertList, 0, $sizeOfInsert));
|
||||||
$insertList[] = $insertList[$randomEleKey];
|
$insertList[] = $insertList[$randomEleKey];
|
||||||
$totalTime += $insertList[$randomEleKey]['length'];
|
$totalTime += $insertList[$randomEleKey]['length'];
|
||||||
|
|
|
@ -13,6 +13,20 @@
|
||||||
*/
|
*/
|
||||||
class CcFiles extends BaseCcFiles {
|
class CcFiles extends BaseCcFiles {
|
||||||
|
|
||||||
|
public function getCueLength()
|
||||||
|
{
|
||||||
|
$cuein = $this->getDbCuein();
|
||||||
|
$cueout = $this->getDbCueout();
|
||||||
|
|
||||||
|
$cueinSec = Application_Common_DateHelper::calculateLengthInSeconds($cuein);
|
||||||
|
$cueoutSec = Application_Common_DateHelper::calculateLengthInSeconds($cueout);
|
||||||
|
$lengthSec = bcsub($cueoutSec, $cueinSec, 6);
|
||||||
|
|
||||||
|
$length = Application_Common_DateHelper::secondsToPlaylistTime($lengthSec);
|
||||||
|
|
||||||
|
return $length;
|
||||||
|
}
|
||||||
|
|
||||||
public function getDbLength($format = "H:i:s.u")
|
public function getDbLength($format = "H:i:s.u")
|
||||||
{
|
{
|
||||||
return parent::getDbLength($format);
|
return parent::getDbLength($format);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue