/**
  * @param string $baseUrl
  * @param array $flavors
  */
 public function tokenizeMultiUrls(&$baseUrl, &$flavors)
 {
     if ($this->usePrefix) {
         //in case of a cached-in tokenizer - need to require bootstrap
         require_once dirname(__FILE__) . '/../../../../../../' . 'infra/general/kString.class.php';
         $strings = array();
         foreach ($flavors as $flavor) {
             $url = $flavor["url"];
             if (substr($url, 0, 4) == "mp4:") {
                 $url = substr($url, 4);
             }
             $strings[] = $url;
         }
         $prefix = kString::getCommonPrefix($strings);
         $pos = strrpos($prefix, "/");
         if ($pos) {
             //include slash sign in prefix substr
             $pos++;
             $prefix = substr($prefix, 0, $pos);
         }
     } else {
         $prefix = "";
         foreach ($flavors as $flavor) {
             $url = $flavor["url"];
             if (substr($url, 0, 4) == "mp4:") {
                 $url = substr($url, 4);
             }
             $prefix = $prefix . $url . ";";
         }
     }
     $factory = new StreamTokenFactory();
     $token = $factory->getToken($this->type, $prefix, null, $this->profile, $this->key, null, $this->window, null, null, null);
     $auth = "?auth=" . $token->getToken() . "&aifp={$this->aifp}&slist={$prefix}";
     $baseUrl .= $auth;
     foreach ($flavors as &$flavor) {
         $url = $flavor["url"];
         $flavor["url"] = $url . $auth;
     }
 }
 /**
  * @param string $baseUrl
  * @param array $flavors
  */
 public function tokenizeMultiUrls(&$baseUrl, &$flavors)
 {
     if ($this->usePrefix) {
         $urls = array();
         $minLen = 1024;
         foreach ($flavors as $flavor) {
             $url = $flavor["url"];
             if (substr($url, 0, 4) == "mp4:") {
                 $url = substr($url, 4);
             }
             $urls[] = $url;
             $minLen = min($minLen, strlen($url));
         }
         $url = array_pop($urls);
         $scan = true;
         for ($i = 0; $i < $minLen && $scan; $i++) {
             $c = substr($url, $i, 1);
             foreach ($urls as $url) {
                 if ($c != substr($url, $i, 1)) {
                     $scan = false;
                     break;
                 }
             }
         }
         $prefix = substr($url, 0, $i - 1);
     } else {
         $prefix = "";
         foreach ($flavors as $flavor) {
             $url = $flavor["url"];
             if (substr($url, 0, 4) == "mp4:") {
                 $url = substr($url, 4);
             }
             $prefix = $prefix . $url . ";";
         }
     }
     $factory = new StreamTokenFactory();
     $token = $factory->getToken($this->type, $prefix, null, $this->profile, $this->salt, null, $this->window, null, null, null);
     $auth = "?auth=" . $token->getToken() . "&aifp={$this->aifp}&slist={$prefix}";
     $baseUrl .= $auth;
     foreach ($flavors as &$flavor) {
         $url = $flavor["url"];
         $flavor["url"] = $url . $auth;
     }
 }