protected function generateContainerParams(KDLFlavor $design, KDLFlavor $target)
 {
     if (!isset($target->_container)) {
         return null;
     }
     $con = $target->_container;
     if ($con->_id == KDLContainerTarget::HLS) {
         $cmdStr = " -hls_list_size 100000 -hls_time 10 -f hls";
         return $cmdStr;
     }
     $cmdStr = parent::generateContainerParams($design, $target);
     if (!isset($target->_container)) {
         return $cmdStr;
     }
     /*
      * On multi-lingual, add:
      * - explicit mapping for video (if required) 
      * - the required audio channels 
      */
     if (isset($target->_audio) && isset($target->_multiStream) && isset($target->_multiStream->audio) && isset($target->_multiStream->audio->languages) && count($target->_multiStream->audio->languages) > 0) {
         if (isset($target->_video)) {
             $cmdStr .= " -map v";
         }
         foreach ($target->_multiStream->audio->languages as $lang) {
             $cmdStr .= " -map 0:" . $lang->id;
         }
     }
     if (in_array($target->_container->_id, array(KDLContainerTarget::MKV, KDLContainerTarget::WEBM))) {
         $cmdStr .= " -sn";
     }
     return $cmdStr;
 }
Example #2
0
 protected function generateContainerParams(KDLFlavor $design, KDLFlavor $target)
 {
     if (!isset($target->_container)) {
         return null;
     }
     $con = $target->_container;
     if ($con->_id == KDLContainerTarget::HLS) {
         $cmdStr = " -hls_list_size 100000 -hls_time 10 -f hls";
         return $cmdStr;
     }
     $cmdStr = parent::generateContainerParams($design, $target);
     if (!isset($target->_container)) {
         return $cmdStr;
     }
     if (in_array($target->_container->_id, array(KDLContainerTarget::MKV, KDLContainerTarget::WEBM))) {
         $cmdStr .= " -sn";
     }
     return $cmdStr;
 }