public function setEntryBroadcastingUrls(LiveStreamEntry $dbEntry) { $partner = PartnerPeer::retrieveByPK($this->partnerId); if (!$partner) { KalturaLog::info("Partner with id [{$this->partnerId}] was not found"); return; } $hostname = $partner->getPrimaryBroadcastUrl(); $dbEntry->setPrimaryBroadcastingUrl($this->getBroadcastUrl($dbEntry, kBroadcastUrlManager::PROTOCOL_RTMP, $hostname, self::PRIMARY_MEDIA_SERVER_INDEX)); $dbEntry->setPrimaryRtspBroadcastingUrl($this->getBroadcastUrl($dbEntry, kBroadcastUrlManager::PROTOCOL_RTSP, $hostname, self::PRIMARY_MEDIA_SERVER_INDEX, true)); $hostname = $partner->getSecondaryBroadcastUrl(); $dbEntry->setSecondaryBroadcastingUrl($this->getBroadcastUrl($dbEntry, kBroadcastUrlManager::PROTOCOL_RTMP, $hostname, self::SECONDARY_MEDIA_SERVER_INDEX)); $dbEntry->setSecondaryRtspBroadcastingUrl($this->getBroadcastUrl($dbEntry, kBroadcastUrlManager::PROTOCOL_RTSP, $hostname, self::SECONDARY_MEDIA_SERVER_INDEX, true)); }
public function setEntryBroadcastingUrls(LiveStreamEntry $dbEntry) { $currentDc = kDataCenterMgr::getCurrentDcId(); $hostname = $this->getHostname($currentDc, $dbEntry->getSource()); $dbEntry->setPrimaryBroadcastingUrl($this->getBroadcastUrl($dbEntry, kBroadcastUrlManager::PROTOCOL_RTMP, $hostname, kBroadcastUrlManager::PRIMARY_MEDIA_SERVER_INDEX)); $dbEntry->setPrimaryRtspBroadcastingUrl($this->getBroadcastUrl($dbEntry, kBroadcastUrlManager::PROTOCOL_RTSP, $hostname, kBroadcastUrlManager::PRIMARY_MEDIA_SERVER_INDEX, true)); $configuration = $this->getConfiguration(); foreach ($configuration as $dc => $config) { if (!is_numeric($dc) || $dc == $currentDc) { continue; } $hostname = $this->getHostname($dc, $dbEntry->getSource()); $dbEntry->setSecondaryBroadcastingUrl($this->getBroadcastUrl($dbEntry, kBroadcastUrlManager::PROTOCOL_RTMP, $hostname, kBroadcastUrlManager::SECONDARY_MEDIA_SERVER_INDEX)); $dbEntry->setSecondaryRtspBroadcastingUrl($this->getBroadcastUrl($dbEntry, kBroadcastUrlManager::PROTOCOL_RTSP, $hostname, kBroadcastUrlManager::SECONDARY_MEDIA_SERVER_INDEX, true)); } }
public function populateEntryFromData(LiveStreamEntry $entry) { $entry->setStreamUsername($this->getEncoderUsername()); $entry->setStreamRemoteId($this->getStreamID()); $entry->setPrimaryBroadcastingUrl($this->getPrimaryBroadcastingUrl()); $entry->setSecondaryBroadcastingUrl($this->getSecondaryBroadcastingUrl()); $entry->setStreamName($this->getStreamName() . "_1_%i@" . $entry->getStreamRemoteId()); if (isset($this->basePlaybackUrls[PlaybackProtocol::APPLE_HTTP])) { $baseHlsUrl = $this->basePlaybackUrls[PlaybackProtocol::APPLE_HTTP]; } else { $baseHlsUrl = "http://" . ($this->getDomainName() ? $this->getDomainName() : self::DEFAULT_DOMAIN_NAME) . "/i/"; } $entry->setHlsStreamUrl($baseHlsUrl . $this->getStreamName() . "_1@" . $this->getStreamID() . "/master.m3u8"); $configs = $entry->getLiveStreamConfigurations(); $config = new kLiveStreamConfiguration(); $config->setProtocol(PlaybackProtocol::AKAMAI_HDS); if (isset($this->basePlaybackUrls[PlaybackProtocol::AKAMAI_HDS])) { $baseHdsUrl = $this->basePlaybackUrls[PlaybackProtocol::AKAMAI_HDS]; } else { $baseHdsUrl = "http://" . ($this->getDomainName() ? $this->getDomainName() : self::DEFAULT_DOMAIN_NAME) . "/z/"; } $config->setUrl($baseHdsUrl . $this->getStreamName() . "_1@" . $this->getStreamID() . "/manifest.f4m"); $configs[] = $config; $entry->setLiveStreamConfigurations($configs); }
public function populateEntryFromData(LiveStreamEntry $entry) { $entry->setStreamUsername($this->getEncoderUsername()); $entry->setStreamUrl($this->getRtmp()); $entry->setStreamRemoteId($this->getStreamID()); $entry->setStreamRemoteBackupId($this->getBackupStreamID()); $entry->setPrimaryBroadcastingUrl($this->getPrimaryBroadcastingUrl()); $entry->setSecondaryBroadcastingUrl($this->getSecondaryBroadcastingUrl()); $entry->setStreamName($this->getStreamName()); }