当前位置: 首页>>代码示例>>PHP>>正文


PHP entry::getSubpId方法代码示例

本文整理汇总了PHP中entry::getSubpId方法的典型用法代码示例。如果您正苦于以下问题:PHP entry::getSubpId方法的具体用法?PHP entry::getSubpId怎么用?PHP entry::getSubpId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在entry的用法示例。


在下文中一共展示了entry::getSubpId方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: buildRtmpFlavorsArray

 /**
  * @param int $duration
  * @param string $baseUrl
  * @return array
  */
 private function buildRtmpFlavorsArray(&$duration, &$baseUrl)
 {
     $flavorAssets = $this->buildRtmpFlavorAssetArray();
     $duration = $this->entry->getDurationInt();
     $flavorDuration = $this->getDurationFromFlavorAssets($flavorAssets);
     if ($flavorDuration) {
         $duration = $flavorDuration;
     }
     $flavors = array();
     if ($this->storageId) {
         $storage = StorageProfilePeer::retrieveByPK($this->storageId);
         if (!$storage) {
             die;
         }
         $baseUrl = $storage->getDeliveryRmpBaseUrl();
         $urlManager = $this->getUrlManagerByStorageProfile($this->storageId);
         // get all flavors with external urls
         foreach ($flavorAssets as $flavorAsset) {
             $key = $flavorAsset->getSyncKey(flavorAsset::FILE_SYNC_FLAVOR_ASSET_SUB_TYPE_ASSET);
             $fileSync = kFileSyncUtils::getReadyExternalFileSyncForKey($key, $this->storageId);
             if (!$fileSync) {
                 continue;
             }
             $this->setupUrlManager($urlManager, $fileSync, $flavorAsset);
             $url = $urlManager->getFileSyncUrl($fileSync, false);
             $url = ltrim($url, "/");
             $flavors[] = $this->getFlavorAssetInfo($url, '', $flavorAsset);
         }
     }
     $partner = $this->entry->getPartner();
     if (!$this->storageId || !count($flavors) && $partner->getStorageServePriority() != StorageProfile::STORAGE_SERVE_PRIORITY_EXTERNAL_ONLY) {
         $partnerId = $this->entry->getPartnerId();
         $subpId = $this->entry->getSubpId();
         $partnerPath = myPartnerUtils::getUrlForPartner($partnerId, $subpId);
         $baseUrl = myPartnerUtils::getRtmpUrl($partnerId);
         // allow to replace {deliveryCode} place holder with the deliveryCode parameter passed to the action
         // a publisher with a rtmpUrl set to {deliveryCode}.example.com/ondemand will be able to use different
         // cdn configuration for different sub publishers by passing a different deliveryCode to the KDP
         if ($this->deliveryCode) {
             $baseUrl = str_replace("{deliveryCode}", $this->deliveryCode, $baseUrl);
         }
         $rtmpHost = parse_url($baseUrl, PHP_URL_HOST);
         $urlManager = $this->getUrlManagerByCdn($rtmpHost);
         // get all flavors with kaltura urls
         foreach ($flavorAssets as $flavorAsset) {
             /* @var $flavorAsset flavorAsset */
             $this->setupUrlManager($urlManager, null, $flavorAsset);
             $url = $urlManager->getAssetUrl($flavorAsset, false);
             $url = ltrim($url, "/");
             $flavors[] = $this->getFlavorAssetInfo($url, '', $flavorAsset);
         }
     }
     if (strpos($this->protocol, "rtmp") === 0) {
         $baseUrl = $this->protocol . '://' . preg_replace('/^rtmp.*?:\\/\\//', '', $baseUrl);
     }
     $urlManager->finalizeUrls($baseUrl, $flavors);
     $this->tokenizer = $urlManager->getTokenizer();
     return $flavors;
 }
开发者ID:EfncoPlugins,项目名称:Media-Management-based-on-Kaltura,代码行数:64,代码来源:playManifestAction.class.php

示例2: toPlaylistUrl

 public static function toPlaylistUrl(entry $playlist, $host, $uid = null)
 {
     $partner_id = $playlist->getPartnerId();
     $subp_id = $playlist->getSubpId();
     if ($playlist->getMediaType() == entry::ENTRY_MEDIA_TYPE_GENERIC_1) {
         $playlist_url = urlencode($playlist->getDataContent());
         // when of type GENERIC === MRSS -> the data content is the url to point to
     } else {
         $playlist_url = urlencode($host . "/index.php/partnerservices2/executeplaylist?" . "uid={$uid}&partner_id={$partner_id}&subp_id={$subp_id}&format=8&" . "ks={ks}&" . self::toQueryString($playlist, false));
     }
     //		$str = "k_pl_autoContinue=true&k_pl_autoInsertMedia=true&k_pl_0_name=" . $playlist->getName() . "&k_pl_0_url=" . $playlist_url;
     $str = "k_pl_0_name=" . $playlist->getName() . "&k_pl_0_url=" . $playlist_url;
     return $str;
 }
开发者ID:GElkayam,项目名称:server,代码行数:14,代码来源:myPlaylistUtils.class.php

示例3: serveRtmp


//.........这里部分代码省略.........
                                     $storagesFlavors[$storage->getId()][] = $flavorAsset;
                                 }
                             }
                         }
                         $maxCount = 0;
                         foreach ($storagesFlavors as $storageId => $storageFlavors) {
                             $count = count($storageFlavors);
                             if ($count > $maxCount) {
                                 $maxCount = $count;
                                 $this->storageId = $storageId;
                                 $finalFlavors = $storageFlavors;
                             }
                         }
                         $flavorAssets = $finalFlavors;
                     } else {
                         foreach ($flavorAssets as $flavorAsset) {
                             $key = $flavorAsset->getSyncKey(flavorAsset::FILE_SYNC_FLAVOR_ASSET_SUB_TYPE_ASSET);
                             $fileSync = kFileSyncUtils::getReadyInternalFileSyncForKey($key);
                             if ($fileSync) {
                                 $finalFlavors[] = $flavorAsset;
                             }
                         }
                     }
                 }
             }
             foreach ($flavorAssets as $flavorAsset) {
                 $mediaInfo = mediaInfoPeer::retrieveByFlavorAssetId($flavorAsset->getId());
                 if ($mediaInfo && ($mediaInfo->getVideoDuration() || $mediaInfo->getAudioDuration() || $mediaInfo->getContainerDuration())) {
                     $duration = $mediaInfo->getVideoDuration() ? $mediaInfo->getVideoDuration() : ($mediaInfo->getAudioDuration() ? $mediaInfo->getAudioDuration() : $mediaInfo->getContainerDuration());
                     $duration /= 1000;
                     break;
                 }
             }
             $baseUrl = null;
             $flavors = array();
             if ($this->storageId) {
                 $storage = StorageProfilePeer::retrieveByPK($this->storageId);
                 if (!$storage) {
                     die;
                 }
                 $baseUrl = $storage->getDeliveryRmpBaseUrl();
                 // get all flavors with external urls
                 foreach ($flavorAssets as $flavorAsset) {
                     $key = $flavorAsset->getSyncKey(flavorAsset::FILE_SYNC_FLAVOR_ASSET_SUB_TYPE_ASSET);
                     $fileSync = kFileSyncUtils::getReadyExternalFileSyncForKey($key, $this->storageId);
                     if (!$fileSync) {
                         continue;
                     }
                     $urlManager = kUrlManager::getUrlManagerByStorageProfile($fileSync->getDc());
                     $urlManager->setClipTo($this->clipTo);
                     $urlManager->setFileExtension($flavorAsset->getFileExt());
                     $urlManager->setProtocol(StorageProfile::PLAY_FORMAT_RTMP);
                     $url = $urlManager->getFileSyncUrl($fileSync);
                     $url = preg_replace('/^\\//', '', $url);
                     $flavors[] = array('url' => $url, 'bitrate' => $flavorAsset->getBitrate(), 'width' => $flavorAsset->getWidth(), 'height' => $flavorAsset->getHeight());
                 }
             } else {
                 $partnerId = $this->entry->getPartnerId();
                 $subpId = $this->entry->getSubpId();
                 $partnerPath = myPartnerUtils::getUrlForPartner($partnerId, $subpId);
                 $baseUrl = myPartnerUtils::getRtmpUrl($partnerId);
                 $urlManager = kUrlManager::getUrlManagerByCdn($this->cdnHost);
                 // get all flavors with kaltura urls
                 foreach ($flavorAssets as $flavorAsset) {
                     $urlManager->setClipTo($this->clipTo);
                     $urlManager->setFileExtension($flavorAsset->getFileExt());
                     $urlManager->setProtocol(StorageProfile::PLAY_FORMAT_RTMP);
                     $url = $urlManager->getFlavorAssetUrl($flavorAsset);
                     $url = preg_replace('/^\\//', '', $url);
                     $flavors[] = array('url' => $url, 'bitrate' => $flavorAsset->getBitrate(), 'width' => $flavorAsset->getWidth(), 'height' => $flavorAsset->getHeight());
                 }
             }
             if (!count($flavors)) {
                 KExternalErrors::dieError(KExternalErrors::FLAVOR_NOT_FOUND);
             }
             if (strpos($this->protocol, "rtmp") === 0) {
                 $baseUrl = $this->protocol . '://' . preg_replace('/^rtmp.*?:\\/\\//', '', $baseUrl);
             }
             return $this->buildXml(self::PLAY_STREAM_TYPE_RECORDED, $flavors, 'video/x-flv', $duration, $baseUrl);
         case entryType::LIVE_STREAM:
             $streamId = $this->entry->getStreamRemoteId();
             $streamUsername = $this->entry->getStreamUsername();
             $baseUrl = $this->entry->getStreamUrl();
             $baseUrl = rtrim($baseUrl, '/');
             $flavors = $this->entry->getStreamBitrates();
             if (count($flavors)) {
                 foreach ($flavors as $index => $flavor) {
                     $brIndex = $index + 1;
                     $flavors[$index]['url'] = str_replace('%i', $brIndex, $this->entry->getStreamName());
                 }
             } else {
                 $flavors[0]['url'] = str_replace('%i', '1', $this->entry->getStreamName());
             }
             if (strpos($this->protocol, "rtmp") === 0) {
                 $baseUrl = $this->protocol . '://' . preg_replace('/^rtmp.*?:\\/\\//', '', $baseUrl);
             }
             return $this->buildXml(self::PLAY_STREAM_TYPE_LIVE, $flavors, 'video/x-flv', null, $baseUrl);
     }
     KExternalErrors::dieError(KExternalErrors::INVALID_ENTRY_TYPE);
 }
开发者ID:richhl,项目名称:kalturaCE,代码行数:101,代码来源:playManifestAction.class.php


注:本文中的entry::getSubpId方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。