Package com.wowza.wms.pushpublish.model
Class PushPublishHTTPBase
Object
com.wowza.wms.pushpublish.model.PushPublishBase
com.wowza.wms.pushpublish.model.PushPublishHTTPBase
- All Implemented Interfaces:
IPushPublish
- Direct Known Subclasses:
PushPublishHTTPCupertino,PushPublishHTTPYouTubeBase
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Floatstatic final Stringstatic final Stringstatic final Stringstatic final IntegerCache Control header constants, used in push publish file cache control .e.g Cloud Storage ( S3, Azure, GCS )protected booleanEnables logging of the manifest itself.protected booleanEnables manifest playlist debug logging.protected static final intprotected intThe max segment count from PushPublishMap.txt.protected intThe max segment count used by the associated live stream packetizer.protected static final intThe minimum allowable playlist size.protected booleanIndicates whether instance-specific playlists should be maintained across source stream interruptions and app restarts.protected Stringbase url to use in playlist/manifestprotected intThe playlist size from the map entry.protected intThe playlist size used by the associated live stream packetizer.protected StringThe instance-specific name for the playlist, allowing the playlist to be maintained across session restarts.protected longThe playlist duration from the map entry.protected PushPublishHTTPPlaylistMapThe playlist map.protected StringThe actual name of playlist file that is to be pushed to the destination (e.g.protected intThe timeout value used to delete orphaned playlists from the vhost.protected booleanuse only relative URL references in the playlist/manifest.Fields inherited from class com.wowza.wms.pushpublish.model.PushPublishBase
appInstance, 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, userNameFields inherited from interface com.wowza.wms.pushpublish.model.IPushPublish
CONNECTED_STATE_CONNECTED, CONNECTED_STATE_CONNECTING, CONNECTED_STATE_NOT_CONNECTED, CONNECTED_STATE_WAITING, PUSHPUBLISH_MAP_PATH_FIELD_NAME, 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_UNKNOWN -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintintGet the playlist count.Get the playlist map.intGet the playlist timeout value.voidinit(IApplicationInstance appInstance, String streamName, IMediaStream stream, Map<String, String> profileData, Map<String, String> maps, com.wowza.wms.pushpublish.manager.IPushPublisher pushPublisher, boolean streamDebug) Inits the instance.booleanIs the entry in an adaptive group.booleanGet the current setting of the HTTP Manifest debug logging This is controlled by the pushPublishHTTPPlayListDebug boolean property in the application.xml and by the http.manifestDebug setting in the pushpublish map filebooleanIs the playlist maintained across recurring pushpublish sessions.booleanvoidLoads map and profile parametersvoidlogDebugManifest(String methodName, String log) Log the provided log str if the HTTP Manifest logging is enabledvoidsetAdaptiveGroupName(String adaptiveGroup) protected voidsetLiveStreamPacketizer(ILiveStreamPacketizer liveStreamPacketizer) voidsetMaxSegmentCountFromMap(int maxSegmentCountFromMap) voidsetMaxSegmentCountFromPacketizer(int maxSegmentCount) voidsetPlaylistAcrossSessions(boolean playlistAcrossSessions) Set whether the playlist is maintained across recurring pushpublish sessions.voidsetPlaylistBaseUrl(String playlistBaseUrl) voidsetPlaylistCountFromMap(int playlistCountFromMap) Set the playlist count value from the map file.voidsetPlaylistCountFromPacketizer(int playlistCountFromPacketizer) Set the playlist count value from the live stream packetizer.voidsetPlaylistTimeout(int playlistTimeout) Set the playlist timeout value.voidsetRelativePlaylists(boolean relativePlaylists) Methods inherited from class com.wowza.wms.pushpublish.model.PushPublishBase
add, addIOPerformance2, clearLoggingValues, createPushPublishSession, getAppInstance, getBandwidth, getBaseParams, getContextStr, getDestinationID, getDestinationName, getDestinationServer, getDstStreamName, getEntryName, getHostname, getImplementation, getInetAddr, getMap, getMessagesOutBytes, getMessagesOutCount, getPassword, getPlaybackHostname, getPort, getProfile, getProperties, getPushPublishType, getReconnectWaitTime, getSrcStream, getSrcStreamName, getUserName, getWowzaStreamingEngineVersionStr, incrementMessagesOut, isAdaptiveStreaming, isDebugLog, isExternalRedundancy, logDebug, logError, logError, logError, logInfo, logWarn, resolveHostName, setAdaptiveStreaming, setAdaptiveStreaming, setAppInstance, setDebugLog, setDestinationName, setDestinationServer, setDestinationServer, setDstStreamName, setEntryName, setExternalRedundancy, setExternalRedundancy, setHost, setHostname, setImplementation, setInetAddr, setPassword, setPlaybackHostname, setPort, setPort, setProfile, setReconnectWaitTime, setSrcStream, setSrcStreamName, setStreamName, setUserName, updateLoggingValues, updateUsageTrackerMethods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.wowza.wms.pushpublish.model.IPushPublish
connect, disconnect, getConnectedState, getMessagesAttemptedCount, getMessagesFailedCount, getMessagesRetriedCount, resetConnection
-
Field Details
-
MIN_PLAYLIST_COUNT
protected static final int MIN_PLAYLIST_COUNTThe minimum allowable playlist size.- See Also:
-
playlistCountFromPacketizer
protected int playlistCountFromPacketizerThe playlist size used by the associated live stream packetizer. How many segments to put in playlist -
playlistCountFromMap
protected int playlistCountFromMapThe playlist size from the map entry. -
maxSegmentCountFromPacketizer
protected int maxSegmentCountFromPacketizerThe max segment count used by the associated live stream packetizer. How many segments to hold for requests -
maxSegmentCountFromMap
protected int maxSegmentCountFromMapThe max segment count from PushPublishMap.txt. How many segments to hold for requests -
playlistMap
The playlist map. -
playlistCrossName
The instance-specific name for the playlist, allowing the playlist to be maintained across session restarts. -
playlistName
The actual name of playlist file that is to be pushed to the destination (e.g. "playlist.m3u8"). -
relativePlaylists
protected boolean relativePlaylistsuse only relative URL references in the playlist/manifest. If true baseUrl is ignored. -
playlistBaseUrl
base url to use in playlist/manifest -
httpManifestDebug
protected boolean httpManifestDebugEnables manifest playlist debug logging. -
httpLogManifests
protected boolean httpLogManifestsEnables logging of the manifest itself. -
INDETERMINATE_PLAYLIST_COUNT
protected static final int INDETERMINATE_PLAYLIST_COUNT- See Also:
-
playlistDurationFromMap
protected long playlistDurationFromMapThe playlist duration from the map entry. This value is in seconds. http.playlistDuration -
playlistTimeout
protected int playlistTimeoutThe timeout value used to delete orphaned playlists from the vhost. -
playlistAcrossSessions
protected boolean playlistAcrossSessionsIndicates whether instance-specific playlists should be maintained across source stream interruptions and app restarts. -
CACHE_CONTROL_MEDIA_DEFAULT
Cache Control header constants, used in push publish file cache control .e.g Cloud Storage ( S3, Azure, GCS ) -
CACHE_CONTROL_FACTOR
-
CACHE_CONTROL_HEADER_KEY
- See Also:
-
CACHE_CONTROL_HEADER
- See Also:
-
CACHE_CONTROL_HEADER_NONE
- See Also:
-
-
Constructor Details
-
PushPublishHTTPBase
public PushPublishHTTPBase() throws com.wowza.wms.server.LicensingException- Throws:
com.wowza.wms.server.LicensingException
-
-
Method Details
-
init
public void init(IApplicationInstance appInstance, String streamName, IMediaStream stream, Map<String, String> profileData, Map<String, String> maps, com.wowza.wms.pushpublish.manager.IPushPublisher pushPublisher, boolean streamDebug) Inits the instance.- Specified by:
initin interfaceIPushPublish- Overrides:
initin classPushPublishBase- Parameters:
appInstance- the app instancestreamName- the source stream namemaps- the map entry paramsprofileData- the profile paramsstreamDebug- stream debug flag
-
setPlaylistCountFromMap
public void setPlaylistCountFromMap(int playlistCountFromMap) Set the playlist count value from the map file.- Parameters:
playlistCountFromMap- the playlist count
-
setPlaylistCountFromPacketizer
public void setPlaylistCountFromPacketizer(int playlistCountFromPacketizer) Set the playlist count value from the live stream packetizer.- Parameters:
playlistCountFromPacketizer- the playlist count
-
setMaxSegmentCountFromMap
public void setMaxSegmentCountFromMap(int maxSegmentCountFromMap) -
setMaxSegmentCountFromPacketizer
public void setMaxSegmentCountFromPacketizer(int maxSegmentCount) -
getPlaylistCount
public int getPlaylistCount()Get the playlist count. The value from the map file is returned if defined, else the packetizer value is returned return the playlist count -
getMaxSegmentCount
public int getMaxSegmentCount() -
getPlaylistTimeout
public int getPlaylistTimeout()Get the playlist timeout value. return the playlist timeout value -
setPlaylistTimeout
public void setPlaylistTimeout(int playlistTimeout) Set the playlist timeout value.- Parameters:
playlistTimeout- the playlist timeout
-
isPlaylistAcrossSessions
public boolean isPlaylistAcrossSessions()Is the playlist maintained across recurring pushpublish sessions. return true if the playlist is maintained across recurring pushpublish sessions -
setPlaylistAcrossSessions
public void setPlaylistAcrossSessions(boolean playlistAcrossSessions) Set whether the playlist is maintained across recurring pushpublish sessions.- Parameters:
playlistAcrossSessions- is the playlist maintained across recurring pushpublish sessions
-
getPlaylistMap
Get the playlist map. return the playlist map -
isRelativePlaylists
public boolean isRelativePlaylists() -
setRelativePlaylists
public void setRelativePlaylists(boolean relativePlaylists) -
getPlaylistBaseUrl
-
setPlaylistBaseUrl
-
getAdaptiveGroupName
-
setAdaptiveGroupName
-
isInAdaptiveGroup
public boolean isInAdaptiveGroup()Is the entry in an adaptive group. return true if the entry is in an adaptive group -
load
Loads map and profile parameters- Overrides:
loadin classPushPublishBase- Parameters:
dataMap- the data map
-
isLogDebugManifest
public boolean isLogDebugManifest()Get the current setting of the HTTP Manifest debug logging This is controlled by the pushPublishHTTPPlayListDebug boolean property in the application.xml and by the http.manifestDebug setting in the pushpublish map file- Returns:
- true if HTTP Mainfest debug logging is enabled
-
logDebugManifest
Log the provided log str if the HTTP Manifest logging is enabled- Parameters:
methodName- name of the class method using the loglog- string to log if enabled
-
setLiveStreamPacketizer
-