Class PushPublishRTMPProfileHandler
- Object
-
- com.wowza.wms.pushpublish.model.PushPublishBase
-
- com.wowza.wms.pushpublish.protocol.rtmp.PushPublishRTMP
-
- com.wowza.wms.pushpublish.protocol.rtmp.PushPublishRTMPProfileHandler
-
- All Implemented Interfaces:
IPushPublish
- Direct Known Subclasses:
PushPublishRTMPAkamaiHandler
public class PushPublishRTMPProfileHandler extends PushPublishRTMP
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.wowza.wms.pushpublish.protocol.rtmp.PushPublishRTMP
PushPublishRTMP.STATE
-
-
Field Summary
Fields Modifier and Type Field Description static Class<PushPublishRTMPProfileHandler>
CLASS
static String
CLASSNAME
protected String
streamId
The stream id.-
Fields inherited from class com.wowza.wms.pushpublish.protocol.rtmp.PushPublishRTMP
akamaiOriginIp, akamaiOriginPort, akamaiPassword, akamaiUserName, bindAddress, bytesAvg, connectAttemptCount, connectionFlashVersion, connectionPageURL, connectionQueryStr, connectionResetCount, connectionState, connectionSwfURL, connectionTimeout, connectLastAttempt, connectLastSuccess, connectMetaData, CURRENTFLASHVERSION, CURRENTFMLEVERSION, debugLogLastPacketCount, debugPackets, doSendOnMetaData, dstAppInstanceName, dstApplicationName, howToPublish, ioSessionToSessionHolder, isReconnectorRunning, isSSL, lastAudioTC, lastDataTC, lastIdleReadTime, lastIdleWriteTime, lastVideoKeyFrameTC, lastVideoTC, listeners, lock, netconnectToSessionHolder, offlineTime, onlineTime, onMetadataFilter, onMetadataItemsToAdd, onMetadataItemsToRemove, onMetadataToSetDataFrame, originalTimecodeOffset, originalTimecodeThreshold, outprint, packetsSentAudio, packetsSentData, packetsSentVideo, packetsSentVideoKeyFrame, pingPongListenerRegistered, queryString, removeDefaultAppInstance, resetOnTimecodeOutOfOrder, rtmpAuthProvider, rtmpDebugLog, secureTokenSharedSecret, sendFCAnnounce, sendFCPublish, sendOnMetadata, sendOriginalTimecodes, sendReleaseStream, sendStreamCloseCommands, sendStreamCloseCommandsSendTime, sessionOrder, srcStreamBufferSize, streamCloseWaitTime, syncPacketType, syncTimecode, timecodesOutOfOrderThreshold, totalPacketsSent, tryConnect, usePingPong, validationFrequency, waitOnMetadataAudio, waitOnMetadataAudioDatarate, waitOnMetadataAvailable, waitOnMetadataReady, waitOnMetadataStartime, waitOnMetadataTimeout, waitOnMetadataVideo, waitOnMetadataVideoDatarate
-
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, userName
-
Fields inherited from interface com.wowza.wms.pushpublish.model.IPushPublish
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_UNKNOWN
-
-
Constructor Summary
Constructors Constructor Description PushPublishRTMPProfileHandler()
Instantiates a new push publisher rtmp.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getDstAppInstanceName()
Get destination appInstance name.String
getDstApplicationName()
Get destination application name.String
getLocalBindAddress()
Get local bind address for the connection.void
init(IApplicationInstance appInstance2, String streamName, IMediaStream stream, java.util.Map<String,String> profileData, java.util.Map<String,String> maps, com.wowza.wms.pushpublish.manager.IPushPublisher pushPublisher, boolean debug)
Inits the instance.boolean
isDebugLog()
Is debug logging turned on.boolean
isDebugPackets()
Checks if is debug packets.boolean
isUsePingPong()
Is RTMP ping pong support enabled.void
load(java.util.HashMap<String,String> dataMap)
Loads map and profile parametersvoid
setApplication(String dstApplicationNameIN)
Set destination application name.void
setConnectionFlashVersion(String connectionFlashVersion)
Set Flash version used in connection metadata.void
setConnectionInfoPageURL(String connectionPageURL)
Set Page URL used in connection metadata.void
setConnectionInfoQueryString(String connectionQueryStr)
Set the connection query string.void
setConnectionInfoSwfURL(String connectionSwfURL)
Set SWF URL used in connection metadata.void
setConnectionTimeout(String connectionTimeout)
void
setConnectLastAttempt(String connectLastAttempt)
void
setConnectLastSuccess(String connectLastSuccess)
void
setDebugPackets(boolean debugPackets)
Sets the debug packets.void
setDebugPackets(String debugPacketsIn)
Sets the debug packets.void
setDstAppInstanceName(String dstAppInstanceName)
Set destination appInstance namevoid
setDstApplicationName(String string)
Sets the dst application name.void
setDstStreamName(String dstStreamNameIn)
Set destination stream namevoid
setHowToPublish(String howToPublish)
Set the howToPublish string (valid values are "live", "record" and "append")void
setlocalBindAddress(String bindAddress)
Sets the local bind address for the connection.void
setOnMetadataToSetDataFrame(String onMetadataToSetDataFrame)
void
setOriginalTimecodeThreshold(String originalTimecodeThreshold)
Sets the original timecode threshold.void
setQueryString(String queryString)
Set the queryString, as set in the map filevoid
setReconnectWaitTime(String reconnectWaitTime)
void
setRemoveDefaultAppInstance(String removeDefaultAppInstance)
Sets the removes the default app instance.void
setResetOnTimecodeOutOfOrder(String resetOnTimecodeOutOfOrder)
Set to true if you wish push to reset if timecodes jump out of order.void
setSecureTokenSharedSecret(String secureTokenSharedSecret)
Set SecureToken shared secret.void
setSendFCAnnounce(String sendFCAnnounce)
void
setSendFCPublish(String sendFCPublish)
Sets the send fc publish.void
setSendOnMetadata(String sendOnMetadata)
void
setSendOriginalTimecodes(String sendOriginalTimecodes)
Sets the send original timecodes.void
setSendReleaseStream(String sendReleaseStream)
Sets the send release stream.void
setSendStreamCloseCommands(String sendStreamCloseCommands)
Sets the send stream close commands.void
setSSL(String sslStr)
void
setStreamCloseWaitTime(String streamCloseWaitTime)
void
setTimecodesOutOfOrderThreshold(String timecodesOutOfOrderThreshold)
void
setUsePingPong(boolean usePingPong)
Sets the RTMP ping pong support parameter.void
setUsePingPong(String usePingPong)
Sets the RTMP ping pong support parameter.void
setValidationFrequency(String validationFrequency)
void
setWaitOnMetadataAudio(String waitOnMetadataAudio)
void
setWaitOnMetadataAudioDatarate(String waitOnMetadataAudioDatarate)
void
setWaitOnMetadataAvailable(String waitOnMetadataAvailable)
void
setWaitOnMetadataTimeout(String waitOnMetadataTimeout)
Timeout (milliseconds) that the wait on onMetadata system will wait looking for video and audio data to be populated.void
setWaitOnMetadataVideo(String waitOnMetadataVideo)
void
setWaitOnMetadataVideoDatarate(String waitOnMetadataVideoDatarate)
-
Methods inherited from class com.wowza.wms.pushpublish.protocol.rtmp.PushPublishRTMP
addConnectMetaData, addListener, addOnMetadataItemToRemove, addSession, bumpReconnectWaitTime, callConnect, connect, convertDataEvenToAMFData, convertOnMetadataToSetDataFrame, createNetConnectionPublisher, createPushPublishSession, disconnect, disconnect, filterOnMetadataEvent, getAkamaiOriginIp, getAkamaiOriginPort, getAkamaiPassword, getAkamaiSessionKey, getAkamaiUserName, getAppInstance, getBindAddress, getConnectAttemptCount, getConnectedState, getConnectionFlashVerion, getConnectionFlashVersion, getConnectionPageURL, getConnectionQueryStr, getConnectionSwfURL, getConnectionTimeout, getConnectLastAttempt, getConnectLastSuccess, getContextStr, getDstStreamName, getHowToPublish, getLastAudioTC, getLastDataTC, getLastSession, getLastVideoKeyFrameTC, getLastVideoTC, getLocalListeners, getLock, getMessagesAttemptedCount, getMessagesFailedCount, getMessagesRetriedCount, getNetConnection, getOnMetadataFilter, getOriginalTimecodeOffset, getOriginalTimecodeThreshold, getPacketsSentAudio, getPacketsSentData, getPacketsSentVideo, getPacketsSentVideoKeyFrame, getPort, getQueryString, getReconnectDelay, getRemoteIpAddress, getRTMPAuthProvider, getSecureTokenSharedSecret, getSessionHolderByNetConnection, getSessionHolderBySession, getSessionListDebug, getSrcStreamBufferSize, getSrcStreamName, getStreamCloseWaitTime, getSyncPacketType, getSyncTimecode, getTimecodesOutOfOrderThreshold, getTotalPacketsSent, getValidationFrequency, getWaitOnMetadataTimeout, internalConnect, isCurrentSession, isFlashVerionFMLE, isFlashVersionFMLE, isOnMetadataReady, isOnMetadataToSetDataFrame, isRemoveDefaultAppInstance, isResetOnTimecodeOutOfOrder, isSendFCAnnounce, isSendFCPublish, isSendOnMetadata, isSendOriginalTimecodes, isSendReleaseStream, isSendStreamCloseCommands, isSSL, isWaitOnMetadataAudio, isWaitOnMetadataAudioDatarate, isWaitOnMetadataAvailable, isWaitOnMetadataVideo, isWaitOnMetadataVideoDatarate, notifyAkamaiClientLogin, notifyAkamaiSetChallenge, notifyAkamaiSetOriginConnectionInfo, notifyConnect, notifyConnectFailure, notifyConnectStart, notifyConnectSuccess, notifyFCAnnounce, notifyFCPublish, notifyHandshakeResult, notifyPublishHandlerPlay, notifyPushPublisherSessionCreate, notifyPushPublisherSessionDestroy, notifySessionClosed, notifySessionIdle, notifySessionOpened, notifyStreamCreate, notifyStreamOnPlayStatus, notifyStreamOnStatus, notifyValidateSession, notifyValidateSessionResult, putOnMetadataItemToAdd, removeListener, removeSession, resetConnection, resetConnection, sessionClosed, sessionOpened, setAkamaiOriginIp, setAkamaiOriginPort, setAkamaiPassword, setAkamaiUserName, setAppInstance, setBindAddress, setConnectionFlashVerion, setConnectionPageURL, setConnectionQueryStr, setConnectionSwfURL, setConnectionTimeout, setConnectLastAttempt, setConnectLastSuccess, setDebugLog, setOnMetadataFilter, setOnMetadataToSetDataFrame, setOriginalTimecodeOffset, setOriginalTimecodeThreshold, setPort, setRemoveDefaultAppInstance, setResetOnTimecodeOutOfOrder, setRTMPAuthProvider, setSendFCAnnounce, setSendFCPublish, setSendOnMetadata, setSendOriginalTimecodes, setSendReleaseStream, setSendStreamCloseCommands, setSrcStreamBufferSize, setSrcStreamName, setSSL, setStreamCloseWaitTime, setStreamDebugLog, setSyncPacketType, setSyncTimecode, setTimecodesOutOfOrderThreshold, setValidationFrequency, setWaitOnMetadataAudio, setWaitOnMetadataAudioDatarate, setWaitOnMetadataAvailable, setWaitOnMetadataTimeout, setWaitOnMetadataVideo, setWaitOnMetadataVideoDatarate, tryToConnect
-
Methods inherited from class com.wowza.wms.pushpublish.model.PushPublishBase
add, addIOPerformance2, clearLoggingValues, getBandwidth, getBaseParams, getDestinationID, getDestinationName, getDestinationServer, getEntryName, getHostname, getImplementation, getInetAddr, getMap, getMessagesOutBytes, getMessagesOutCount, getPassword, getPlaybackHostname, getProfile, getProperties, getPushPublishType, getReconnectWaitTime, getSrcStream, getUserName, getWowzaStreamingEngineVersionStr, incrementMessagesOut, isAdaptiveStreaming, isExternalRedundancy, logDebug, logError, logError, logError, logInfo, logWarn, resolveHostName, setAdaptiveStreaming, setAdaptiveStreaming, setDestinationName, setDestinationServer, setDestinationServer, setEntryName, setExternalRedundancy, setExternalRedundancy, setHost, setHostname, setImplementation, setInetAddr, setPassword, setPlaybackHostname, setPort, setProfile, setReconnectWaitTime, setSrcStream, setStreamName, setUserName, updateLoggingValues, updateUsageTracker
-
-
-
-
Field Detail
-
CLASS
public static final Class<PushPublishRTMPProfileHandler> CLASS
-
CLASSNAME
public static final String CLASSNAME
- See Also:
- Constant Field Values
-
streamId
protected String streamId
The stream id.
-
-
Method Detail
-
setConnectionTimeout
public void setConnectionTimeout(String connectionTimeout)
-
setSendFCPublish
public void setSendFCPublish(String sendFCPublish)
Sets the send fc publish.- Parameters:
sendFCPublish
- the new send fc publish
-
setSendReleaseStream
public void setSendReleaseStream(String sendReleaseStream)
Sets the send release stream.- Parameters:
sendReleaseStream
- the new send release stream
-
setConnectionInfoQueryString
public void setConnectionInfoQueryString(String connectionQueryStr)
Set the connection query string.- Parameters:
connectionQueryStr
- connection query string
-
setConnectionFlashVersion
public void setConnectionFlashVersion(String connectionFlashVersion)
Set Flash version used in connection metadata.- Overrides:
setConnectionFlashVersion
in classPushPublishRTMP
- Parameters:
connectionFlashVersion
- Flash version used in connection metadata
-
setConnectionInfoSwfURL
public void setConnectionInfoSwfURL(String connectionSwfURL)
Set SWF URL used in connection metadata.- Parameters:
connectionSwfURL
- SWF URL used in connection metadata
-
setConnectionInfoPageURL
public void setConnectionInfoPageURL(String connectionPageURL)
Set Page URL used in connection metadata.- Parameters:
connectionPageURL
- Page URL used in connection metadata
-
setSecureTokenSharedSecret
public void setSecureTokenSharedSecret(String secureTokenSharedSecret)
Set SecureToken shared secret.- Overrides:
setSecureTokenSharedSecret
in classPushPublishRTMP
- Parameters:
secureTokenSharedSecret
- SecureToken shared secret
-
setSendFCAnnounce
public void setSendFCAnnounce(String sendFCAnnounce)
-
setValidationFrequency
public void setValidationFrequency(String validationFrequency)
-
setConnectLastAttempt
public void setConnectLastAttempt(String connectLastAttempt)
-
setReconnectWaitTime
public void setReconnectWaitTime(String reconnectWaitTime)
-
setConnectLastSuccess
public void setConnectLastSuccess(String connectLastSuccess)
-
setSendOriginalTimecodes
public void setSendOriginalTimecodes(String sendOriginalTimecodes)
Sets the send original timecodes.- Parameters:
sendOriginalTimecodes
- the new send original timecodes
-
setSendOnMetadata
public void setSendOnMetadata(String sendOnMetadata)
-
setRemoveDefaultAppInstance
public void setRemoveDefaultAppInstance(String removeDefaultAppInstance)
Sets the removes the default app instance.- Parameters:
removeDefaultAppInstance
- the new removes the default app instance
-
setHowToPublish
public void setHowToPublish(String howToPublish)
Description copied from class:PushPublishRTMP
Set the howToPublish string (valid values are "live", "record" and "append")- Overrides:
setHowToPublish
in classPushPublishRTMP
- Parameters:
howToPublish
- howToPublish string
-
setOnMetadataToSetDataFrame
public void setOnMetadataToSetDataFrame(String onMetadataToSetDataFrame)
-
setSendStreamCloseCommands
public void setSendStreamCloseCommands(String sendStreamCloseCommands)
Sets the send stream close commands.- Parameters:
sendStreamCloseCommands
- the new send stream close commands
-
setStreamCloseWaitTime
public void setStreamCloseWaitTime(String streamCloseWaitTime)
-
setOriginalTimecodeThreshold
public void setOriginalTimecodeThreshold(String originalTimecodeThreshold)
Sets the original timecode threshold.- Overrides:
setOriginalTimecodeThreshold
in classPushPublishRTMP
- Parameters:
originalTimecodeThreshold
- the new original timecode threshold
-
setQueryString
public void setQueryString(String queryString)
Description copied from class:PushPublishRTMP
Set the queryString, as set in the map file- Overrides:
setQueryString
in classPushPublishRTMP
-
setResetOnTimecodeOutOfOrder
public void setResetOnTimecodeOutOfOrder(String resetOnTimecodeOutOfOrder)
Set to true if you wish push to reset if timecodes jump out of order.- Parameters:
resetOnTimecodeOutOfOrder
- true if you wish push to reset if timecodes jump out of order
-
setTimecodesOutOfOrderThreshold
public void setTimecodesOutOfOrderThreshold(String timecodesOutOfOrderThreshold)
-
setWaitOnMetadataTimeout
public void setWaitOnMetadataTimeout(String waitOnMetadataTimeout)
Timeout (milliseconds) that the wait on onMetadata system will wait looking for video and audio data to be populated.- Parameters:
waitOnMetadataTimeout
- the new timeout value (milliseconds-string)
-
setWaitOnMetadataAvailable
public void setWaitOnMetadataAvailable(String waitOnMetadataAvailable)
-
setWaitOnMetadataVideo
public void setWaitOnMetadataVideo(String waitOnMetadataVideo)
-
setWaitOnMetadataAudio
public void setWaitOnMetadataAudio(String waitOnMetadataAudio)
-
setWaitOnMetadataVideoDatarate
public void setWaitOnMetadataVideoDatarate(String waitOnMetadataVideoDatarate)
-
setWaitOnMetadataAudioDatarate
public void setWaitOnMetadataAudioDatarate(String waitOnMetadataAudioDatarate)
-
setSSL
public void setSSL(String sslStr)
-
load
public void load(java.util.HashMap<String,String> dataMap)
Description copied from class:PushPublishBase
Loads map and profile parameters- Overrides:
load
in classPushPublishBase
- Parameters:
dataMap
- the data map
-
isDebugPackets
public boolean isDebugPackets()
Checks if is debug packets.- Overrides:
isDebugPackets
in classPushPublishRTMP
- Returns:
- true, if is debug packets
-
setDebugPackets
public void setDebugPackets(boolean debugPackets)
Sets the debug packets.- Overrides:
setDebugPackets
in classPushPublishRTMP
- Parameters:
debugPackets
- the new debug packets
-
setDebugPackets
public void setDebugPackets(String debugPacketsIn)
Sets the debug packets.- Parameters:
debugPacketsIn
- the new debug packets
-
isUsePingPong
public boolean isUsePingPong()
Is RTMP ping pong support enabled.- Returns:
- true if ping pong support is enabled
-
setUsePingPong
public void setUsePingPong(boolean usePingPong)
Sets the RTMP ping pong support parameter.- Parameters:
usePingPong
- true to enable RTMP ping pong support
-
setUsePingPong
public void setUsePingPong(String usePingPong)
Sets the RTMP ping pong support parameter.- Parameters:
usePingPong
- "true" to enable RTMP ping pong support
-
isDebugLog
public boolean isDebugLog()
Is debug logging turned on.- Specified by:
isDebugLog
in interfaceIPushPublish
- Overrides:
isDebugLog
in classPushPublishRTMP
- Returns:
- true if debug logging is turned on
-
getDstApplicationName
public String getDstApplicationName()
Get destination application name.- Overrides:
getDstApplicationName
in classPushPublishRTMP
- Returns:
- destination application name
-
setApplication
public void setApplication(String dstApplicationNameIN)
Set destination application name.- Parameters:
dstApplicationNameIN
- destination application name
-
setDstApplicationName
public void setDstApplicationName(String string)
Sets the dst application name.- Overrides:
setDstApplicationName
in classPushPublishRTMP
- Parameters:
string
- the new dst application name
-
getDstAppInstanceName
public String getDstAppInstanceName()
Get destination appInstance name.- Overrides:
getDstAppInstanceName
in classPushPublishRTMP
- Returns:
- destination appInstance name
-
setlocalBindAddress
public void setlocalBindAddress(String bindAddress)
Sets the local bind address for the connection.- Parameters:
bindAddress
- the local bind address for the connection
-
getLocalBindAddress
public String getLocalBindAddress()
Get local bind address for the connection.- Returns:
- local bind address for the connection
-
init
public void init(IApplicationInstance appInstance2, String streamName, IMediaStream stream, java.util.Map<String,String> profileData, java.util.Map<String,String> maps, com.wowza.wms.pushpublish.manager.IPushPublisher pushPublisher, boolean debug)
Description copied from class:PushPublishBase
Inits the instance.- Specified by:
init
in interfaceIPushPublish
- Overrides:
init
in classPushPublishBase
- Parameters:
appInstance2
- the app instancestreamName
- the source stream nameprofileData
- the profile paramsmaps
- the map entry paramsdebug
- stream debug flag
-
setDstStreamName
public void setDstStreamName(String dstStreamNameIn)
Description copied from class:PushPublishRTMP
Set destination stream name- Specified by:
setDstStreamName
in interfaceIPushPublish
- Overrides:
setDstStreamName
in classPushPublishRTMP
- Parameters:
dstStreamNameIn
- destination stream name
-
setDstAppInstanceName
public void setDstAppInstanceName(String dstAppInstanceName)
Description copied from class:PushPublishRTMP
Set destination appInstance name- Overrides:
setDstAppInstanceName
in classPushPublishRTMP
- Parameters:
dstAppInstanceName
- destination appInstance name
-
-