com.wowza.wms.pushpublish.akamai.IPushPublishAkamai, IPushPublish, IPushPublishHTTPGroupMember, IPushPublishHTTPOutputBuilder, IPushPublishProfileUtilpublic class PushPublishHTTPSanJoseAkamaiHandler extends com.wowza.wms.pushpublish.akamai.PushPublishHTTPAkamaiBase implements IPushPublishHTTPGroupMember, IPushPublishHTTPOutputBuilder, IPushPublishProfileUtil, com.wowza.wms.pushpublish.akamai.IPushPublishAkamai
| Modifier and Type | Field | Description |
|---|---|---|
static int |
AKAMAISANJOSECHUNKDURATION |
|
static String |
BITRATEKBPSPLACHOLDER |
|
static String |
BOOTSTRAPINFOID |
|
static String |
BOOTSTRAPURL |
|
static String |
CHUNKIDPLACEHOLDER |
|
static String |
CHUNKLISTNAME |
|
static String |
CHUNKMEDIANAME |
|
static Class<PushPublishHTTPSanJoseAkamaiHandler> |
CLASS |
|
static String |
CLASSNAME |
|
static String |
HTTPADAPTER_NAME |
|
static String |
LIVESTREAMPACKETIZER_NAME |
|
static String |
MEDIAURLFILENAME |
|
static String |
REPRESENTATIONID |
|
static String |
SETLEVELPLAYLISTNAME |
|
static String |
STREAMLEVELPLAYLISTNAME |
|
static String |
STREAMNAMEPLACHOLDER |
|
static String |
TAB1 |
|
static String |
TAB2 |
CONNECTED_STATE_CONNECTED, CONNECTED_STATE_CONNECTING, CONNECTED_STATE_NOT_CONNECTED, CONNECTED_STATE_WAITING, PUSHPUBLISH_TYPE_CUPERTINO, PUSHPUBLISH_TYPE_MPEGDASH, PUSHPUBLISH_TYPE_NOTIFY_PACKET, PUSHPUBLISH_TYPE_RTMP, PUSHPUBLISH_TYPE_RTP, PUSHPUBLISH_TYPE_RTP_BUFFERED, PUSHPUBLISH_TYPE_SANJOSE, PUSHPUBLISH_TYPE_SRT, PUSHPUBLISH_TYPE_UNKNOWNPUSHER_ERROR_LIVEPACKETIZER_NOT_CONFIGURED, PUSHER_ERROR_RENDITIONS_MISCONFIGUREDPROPERTY_LOG_DEBUG_MANIFESTappInstance, className, DESTINATION_BAK, DESTINATION_PRI, DESTINATION_RED, destinationName, destinationServer, dstStreamName, entryName, hostname, inetAddr, isAdaptiveStreaming, isExternalRedundancy, logger, mImplementation, myMap, password, playbackHostname, port, profile, properties, pushPublishSession, pushPublishStreamDebug, pushPublishType, reconnectWaitTime, sendingPerformance, srcStream, srcStreamName, totalIOPerformance2Last, totalIOPerformanceLast, userNameAKAMAI_DEFAULT_HOSTID, akamaiEventName, akamaiHostId, akamaiIngestAcceleration, akamaiProtocolName, akamaiStreamId, connectionTimeout, fakePosts, httpIngressDomainSuffix, httpPlaybackDomainOverride, httpWriterLogOptions, isPlaybackSSL, isSendSSL, maxRetries, protocol, queryParams, readWriteTimeout, reuseSockets, sendToBackupServer, userAgentCACHE_CONTROL_FACTOR, CACHE_CONTROL_HEADER, CACHE_CONTROL_HEADER_KEY, CACHE_CONTROL_HEADER_NONE, CACHE_CONTROL_MEDIA_DEFAULT, httpLogManifests, httpManifestDebug, INDETERMINATE_PLAYLIST_COUNT, MIN_PLAYLIST_COUNT, playlistAcrossSessions, playlistCountFromMap, playlistCountFromPacketizer, playlistCrossName, playlistDurationFromMap, playlistMap, playlistName, playlistTimeout, relativePlaylists| Constructor | Description |
|---|---|
PushPublishHTTPSanJoseAkamaiHandler() |
| Modifier and Type | Method | Description |
|---|---|---|
Boolean |
adaptiveGroupPlaylistNeedsUpdating(long lastUpdateTime,
java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByRedundantPairs,
java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByAbrGroups) |
|
void |
connect() |
|
ManifestModel |
createGroupPlaylist(String id,
java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByRedundantPairs,
java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByAbrGroups,
IApplicationInstance appInstance,
String context,
WMSProperties properties) |
Creates a group playlist.
|
PushPublishHTTPOutputItem |
createOutputItem(ILiveStreamPacketizer liveStreamPacketizer,
int lastChunkIndex) |
|
void |
disconnect() |
|
void |
disconnect(boolean hard) |
|
void |
error(int errorCode) |
|
int |
getChunkDurationTarget(ILiveStreamPacketizer liveStreamPacketizer) |
|
int |
getConnectedState() |
|
String |
getContextStr() |
|
String |
getGroupPlaylistRenditionDescription(boolean forABRPlaylist) |
Generates a description or playlist-element String which can be used to differentiate this rendition from other renditions in a group.
|
int |
getLastChunkId(ILiveStreamPacketizer liveStreamPacketizer) |
|
String |
getLiveStreamPacketizerName() |
|
long |
getMessagesAttemptedCount() |
|
long |
getMessagesFailedCount() |
|
long |
getMessagesRetriedCount() |
|
Object |
getPacketizerLock(ILiveStreamPacketizer liveStreamPacketizer) |
|
String |
getPlaybackChunklistURL(String filename,
boolean forABRPlaylist) |
|
String |
getPlaylistF4M(LiveStreamPacketizerSanJose packetizer,
boolean setLevel) |
|
WMSProperties |
getPlaylistProperties() |
|
String |
getSetLevelMediaElements(boolean forABRPlaylist) |
|
String |
getStreamLevelMediaElements(LiveStreamPacketizerSanJose packetizer) |
|
void |
init(IApplicationInstance appInstance,
String streamName,
IMediaStream stream,
java.util.Map<String,String> profileData,
java.util.Map<String,String> maps,
com.wowza.wms.pushpublish.manager.IPushPublisher pushPublisher,
boolean streamDebug) |
Inits the instance.
|
boolean |
isDebugLog() |
|
boolean |
isDeleteSentChunks() |
|
Boolean |
isGroupReady(java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByRedundantPairs,
java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByAbrGroups) |
|
boolean |
isParent(java.util.Map<String,String> entry) |
Is this a parent profile?
|
void |
load(java.util.HashMap<String,String> dataMap) |
Loads map and profile parameters
|
void |
onDeleteEntry(java.util.Map<String,String> entry) |
Allows processing of a map file entry prior to being deleted.
|
void |
onReadEntry(java.util.Map<String,String> entry) |
Allows modification of a map file entry after prior to being returned through a Push Publishing api.
|
void |
onWriteEntry(java.util.Map<String,String> oldEntry,
java.util.Map<String,String> newEntry) |
Allows modification of a map file entry prior to being written to the map file.
|
boolean |
outputClose() |
|
boolean |
outputOpen() |
|
void |
outputSend(PushPublishHTTPOutputItem outputItem) |
|
String |
padInt(int value,
int len) |
|
void |
resetNewPacketizer(ILiveStreamPacketizer liveStreamPacketizer) |
|
void |
sendGroupPlaylist(String groupName,
ManifestModel manifest) |
Sends a group playlist to the destination.
|
void |
setApplicationInstance(IApplicationInstance appInstance) |
Set the application instance associated with this Util class
|
void |
setApplicationName(String appName) |
Set the application name associated with this Util class
|
void |
setDebugLog(boolean debugLog) |
Set debug logging.
|
void |
setDeleteSentChunks(boolean deleteSentChunks) |
|
void |
setRepresentationId(String representationId) |
|
void |
setVHost(IVHost vhost) |
Set the VHost associated with this Util class
|
boolean |
validateEntry(java.util.Map<String,String> entry) |
Allows validation of a map file entry.
|
getAkamaiEventName, getAkamaiHostId, getAkamaiStreamId, getDstStreamName, getEntryName, getHostname, getPlaybackHostname, getSrcStreamName, getUserAgent, isAkamaiIngestAcceleration, isSendToBackupServer, logDebug, logError, logError, logError, logInfo, logWarn, setAkamaiEventName, setAkamaiHostId, setAkamaiIngestAcceleration, setAkamaiStreamId, setDstStreamName, setEntryName, setHostname, setPlaybackHostname, setSendToBackupServer, setSrcStreamName, setUserAgentgetAdaptiveGroupName, isInAdaptiveGroup, isInRedundancyPair, isLogDebugManifest, isSendToBackupServergetAppInstance, getDstStreamName, getSrcStreamNameclone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitadd, addIOPerformance2, clearLoggingValues, createPushPublishSession, getAppInstance, getBandwidth, getBaseParams, getDestinationID, getDestinationName, getDestinationServer, getDstStreamName, getEntryName, getHostname, getImplementation, getInetAddr, getMap, getMessagesOutBytes, getMessagesOutCount, getPassword, getPlaybackHostname, getPort, getProfile, getProperties, getPushPublishType, getReconnectWaitTime, getSrcStream, getSrcStreamName, getUserName, getWowzaStreamingEngineVersionStr, incrementMessagesOut, isAdaptiveStreaming, isExternalRedundancy, logDebug, logError, logError, logError, logInfo, logWarn, setAdaptiveStreaming, setAdaptiveStreaming, setAppInstance, setDestinationName, setDestinationServer, setDestinationServer, setDstStreamName, setEntryName, setExternalRedundancy, setExternalRedundancy, setHost, setHostname, setImplementation, setInetAddr, setPassword, setPlaybackHostname, setPort, setPort, setProfile, setReconnectWaitTime, setSrcStream, setSrcStreamName, setStreamName, setUserName, updateLoggingValues, updateUsageTrackergetAkamaiEventName, getAkamaiHostId, getAkamaiStreamId, getConnectionTimeout, getDestinationDomain, getDestinationGroupPath, getDestinationGroupURL, getDestinationPath, getDestinationPort, getDestinationURL, getMaxRetries, getPlaybackDomain, getPlaybackURL, getReadWriteTimeout, getResolvedAkamaiStreamId, getSubPath, getUserAgent, isAkamaiIngestAcceleration, isFakePosts, isInRedundancyPair, isReuseSockets, isSendToBackupServer, resetConnection, resolveAkamaiStreamId, setAkamaiEventName, setAkamaiHostId, setAkamaiIngestAcceleration, setAkamaiStreamId, setConnectionTimeout, setFakePosts, setMaxRetries, setReadWriteTimeout, setReuseSockets, setSendToBackupServer, setUserAgentgetAdaptiveGroupName, getCachecontrol, getPlaylistCount, getPlaylistMap, getPlaylistTimeout, isInAdaptiveGroup, isLogDebugManifest, isPlaylistAcrossSessions, isRelativePlaylists, logDebugManifest, setAdaptiveGroupName, setCachecontrol, setLiveStreamPacketizer, setPlaylistAcrossSessions, setPlaylistCountFromMap, setPlaylistCountFromPacketizer, setPlaylistTimeout, setRelativePlaylistspublic static final int AKAMAISANJOSECHUNKDURATION
public static final String BITRATEKBPSPLACHOLDER
public static final String BOOTSTRAPINFOID
public static final String BOOTSTRAPURL
public static final String CHUNKIDPLACEHOLDER
public static final String CHUNKLISTNAME
public static final String CHUNKMEDIANAME
public static final Class<PushPublishHTTPSanJoseAkamaiHandler> CLASS
public static final String CLASSNAME
public static final String HTTPADAPTER_NAME
public static final String LIVESTREAMPACKETIZER_NAME
public static final String MEDIAURLFILENAME
public static final String REPRESENTATIONID
public static final String SETLEVELPLAYLISTNAME
public static final String STREAMLEVELPLAYLISTNAME
public static final String STREAMNAMEPLACHOLDER
public static final String TAB1
public static final String TAB2
public PushPublishHTTPSanJoseAkamaiHandler()
throws com.wowza.wms.server.LicensingException
com.wowza.wms.server.LicensingExceptionpublic Boolean adaptiveGroupPlaylistNeedsUpdating(long lastUpdateTime,
java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByRedundantPairs,
java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByAbrGroups)
adaptiveGroupPlaylistNeedsUpdating in interface IPushPublishHTTPGroupMemberpublic void connect()
connect in interface IPushPublishpublic ManifestModel createGroupPlaylist(String id, java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByRedundantPairs, java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByAbrGroups, IApplicationInstance appInstance, String context, WMSProperties properties)
IPushPublishHTTPGroupMembercreateGroupPlaylist in interface IPushPublishHTTPGroupMembercreateGroupPlaylist in interface IPushPublishProfileUtilid - the idgroupingsByRedundantPairs - the renditions grouped by redundant pairsgroupingsByAbrGroups - the renditions grouped by redundant ABR groupproperties - the propertiespublic PushPublishHTTPOutputItem createOutputItem(ILiveStreamPacketizer liveStreamPacketizer, int lastChunkIndex)
createOutputItem in interface IPushPublishHTTPOutputBuilderpublic void disconnect()
public void disconnect(boolean hard)
disconnect in interface IPushPublishpublic void error(int errorCode)
error in interface IPushPublishHTTPOutputBuilderpublic int getChunkDurationTarget(ILiveStreamPacketizer liveStreamPacketizer)
getChunkDurationTarget in interface IPushPublishHTTPOutputBuilderpublic int getConnectedState()
getConnectedState in interface IPushPublishpublic String getContextStr()
getContextStr in interface IPushPublishgetContextStr in interface com.wowza.wms.pushpublish.akamai.IPushPublishAkamaigetContextStr in class PushPublishBasepublic String getGroupPlaylistRenditionDescription(boolean forABRPlaylist)
IPushPublishHTTPGroupMembergetGroupPlaylistRenditionDescription in interface IPushPublishHTTPGroupMemberforABRPlaylist - flag to indicate whether the description is for an adaptive bitrate group playlist.public int getLastChunkId(ILiveStreamPacketizer liveStreamPacketizer)
getLastChunkId in interface IPushPublishHTTPOutputBuilderpublic String getLiveStreamPacketizerName()
getLiveStreamPacketizerName in interface IPushPublishHTTPOutputBuilderpublic long getMessagesAttemptedCount()
getMessagesAttemptedCount in interface IPushPublishpublic long getMessagesFailedCount()
getMessagesFailedCount in interface IPushPublishpublic long getMessagesRetriedCount()
getMessagesRetriedCount in interface IPushPublishpublic Object getPacketizerLock(ILiveStreamPacketizer liveStreamPacketizer)
getPacketizerLock in interface IPushPublishHTTPOutputBuilderpublic String getPlaybackChunklistURL(String filename,
boolean forABRPlaylist)
public String getPlaylistF4M(LiveStreamPacketizerSanJose packetizer, boolean setLevel)
public WMSProperties getPlaylistProperties()
getPlaylistProperties in interface IPushPublishHTTPGroupMemberpublic String getSetLevelMediaElements(boolean forABRPlaylist)
public String getStreamLevelMediaElements(LiveStreamPacketizerSanJose packetizer)
public void init(IApplicationInstance appInstance, String streamName, IMediaStream stream, java.util.Map<String,String> profileData, java.util.Map<String,String> maps, com.wowza.wms.pushpublish.manager.IPushPublisher pushPublisher, boolean streamDebug)
PushPublishHTTPBaseinit in interface IPushPublishinit in class com.wowza.wms.pushpublish.akamai.PushPublishHTTPAkamaiBaseappInstance - the app instancestreamName - the source stream nameprofileData - the profile paramsmaps - the map entry paramsstreamDebug - stream debug flagpublic boolean isDebugLog()
isDebugLog in interface IPushPublishisDebugLog in interface com.wowza.wms.pushpublish.akamai.IPushPublishAkamaiisDebugLog in interface IPushPublishHTTPOutputBuilderisDebugLog in class PushPublishBasepublic boolean isDeleteSentChunks()
isDeleteSentChunks in class com.wowza.wms.pushpublish.akamai.PushPublishHTTPAkamaiBasepublic Boolean isGroupReady(java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByRedundantPairs, java.util.List<java.util.List<IPushPublishHTTPGroupMember>> groupingsByAbrGroups)
isGroupReady in interface IPushPublishHTTPGroupMemberpublic boolean isParent(java.util.Map<String,String> entry)
IPushPublishProfileUtilisParent in interface IPushPublishProfileUtilentry - the map file entry as read from diskpublic void load(java.util.HashMap<String,String> dataMap)
PushPublishHTTPBaseload in class com.wowza.wms.pushpublish.akamai.PushPublishHTTPAkamaiBasedataMap - the data mappublic void onDeleteEntry(java.util.Map<String,String> entry)
IPushPublishProfileUtilonDeleteEntry in interface IPushPublishProfileUtilentry - the map file entry as read from diskpublic void onReadEntry(java.util.Map<String,String> entry)
IPushPublishProfileUtilonReadEntry in interface IPushPublishProfileUtilentry - the map file entry as read from diskpublic void onWriteEntry(java.util.Map<String,String> oldEntry,
java.util.Map<String,String> newEntry)
IPushPublishProfileUtilonWriteEntry in interface IPushPublishProfileUtiloldEntry - the old version of the entry (null for new entries)newEntry - the new version of the entry to be writtenpublic boolean outputClose()
outputClose in interface IPushPublishHTTPOutputBuilderpublic boolean outputOpen()
outputOpen in interface IPushPublishHTTPOutputBuilderpublic void outputSend(PushPublishHTTPOutputItem outputItem)
outputSend in interface IPushPublishHTTPOutputBuilderpublic String padInt(int value,
int len)
public void resetNewPacketizer(ILiveStreamPacketizer liveStreamPacketizer)
resetNewPacketizer in interface IPushPublishHTTPOutputBuilderpublic void sendGroupPlaylist(String groupName,
ManifestModel manifest)
IPushPublishHTTPGroupMembersendGroupPlaylist in interface IPushPublishHTTPGroupMembergroupName - the group namemanifest - the playlist/manifest to sendpublic void setApplicationInstance(IApplicationInstance appInstance)
IPushPublishProfileUtilsetApplicationInstance in interface IPushPublishProfileUtilpublic void setApplicationName(String appName)
IPushPublishProfileUtilsetApplicationName in interface IPushPublishProfileUtilpublic void setDebugLog(boolean debugLog)
PushPublishBasesetDebugLog in interface IPushPublishsetDebugLog in interface com.wowza.wms.pushpublish.akamai.IPushPublishAkamaisetDebugLog in class PushPublishBasedebugLog - debug loggingpublic void setDeleteSentChunks(boolean deleteSentChunks)
setDeleteSentChunks in class com.wowza.wms.pushpublish.akamai.PushPublishHTTPAkamaiBasepublic void setRepresentationId(String representationId)
public void setVHost(IVHost vhost)
IPushPublishProfileUtilsetVHost in interface IPushPublishProfileUtilpublic boolean validateEntry(java.util.Map<String,String> entry)
IPushPublishProfileUtilvalidateEntry in interface IPushPublishProfileUtilentry - the map file entry as read from disk