Пример #1
0
 /**
  * compareFlavors compares to flavorParamsOutput and decide which should be performed first
  * 
  * @param flavorParamsOutput $a
  * @param flavorParamsOutput $b
  */
 public static function compareFlavors(flavorParamsOutput $a, flavorParamsOutput $b)
 {
     $flavorA = $a->getId();
     $flavorB = $b->getId();
     if ($a->getReadyBehavior() == flavorParamsConversionProfile::READY_BEHAVIOR_INHERIT_FLAVOR_PARAMS && $b->getReadyBehavior() > flavorParamsConversionProfile::READY_BEHAVIOR_INHERIT_FLAVOR_PARAMS) {
         KalturaLog::debug("flavor[{$flavorB}] before flavor[{$flavorA}] at line[" . __LINE__ . "]");
         return 1;
     }
     if ($a->getReadyBehavior() > flavorParamsConversionProfile::READY_BEHAVIOR_INHERIT_FLAVOR_PARAMS && $b->getReadyBehavior() == flavorParamsConversionProfile::READY_BEHAVIOR_INHERIT_FLAVOR_PARAMS) {
         KalturaLog::debug("flavor[{$flavorA}] before flavor[{$flavorB}] at line[" . __LINE__ . "]");
         return -1;
     }
     if ($a->getReadyBehavior() == flavorParamsConversionProfile::READY_BEHAVIOR_OPTIONAL && $b->getReadyBehavior() == flavorParamsConversionProfile::READY_BEHAVIOR_REQUIRED) {
         KalturaLog::debug("flavor[{$flavorB}] before flavor[{$flavorA}] at line[" . __LINE__ . "]");
         return 1;
     }
     if ($a->getReadyBehavior() == flavorParamsConversionProfile::READY_BEHAVIOR_REQUIRED && $b->getReadyBehavior() == flavorParamsConversionProfile::READY_BEHAVIOR_OPTIONAL) {
         KalturaLog::debug("flavor[{$flavorA}] before flavor[{$flavorB}] at line[" . __LINE__ . "]");
         return -1;
     }
     if ($a->getVideoBitrate() > $b->getVideoBitrate()) {
         KalturaLog::debug("flavor[{$flavorB}] before flavor[{$flavorA}] at line[" . __LINE__ . "]");
         return 1;
     }
     KalturaLog::debug("flavor[{$flavorA}] before flavor[{$flavorB}] at line[" . __LINE__ . "]");
     return -1;
 }