Package com.wowza.wms.rtp.model
Class RTPStream
Object
com.wowza.wms.rtp.model.RTPStream
RTPStream: RTP Stream class which encapsulates an IMediaStream class for RTP streaming.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final Stringstatic final booleanstatic final booleanstatic final Stringstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final Stringstatic final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddLockRepeaterStreams(String streamName, MediaCasterStreamItem mediaCasterStreamItem) voidaddStreamAttribute(String key, String value) Add a name value pair to the stream attribute collectionvoidaddStreamInfo(String key, String value) Add a name value pair to the stream info collectionvoidaddTrack(com.wowza.wms.rtp.model.RTPTrack track) Add a trackvoidaddTrackId(String seq, String trackId) Add trackvoidaddTrackInternal(com.wowza.wms.rtp.model.RTPTrack track) Add RTP trackvoidannounce(com.wowza.wms.rtp.model.RTPRequestStatus status) Execute announce commandvoidattachToWMSSession(com.wowza.wms.server.RtmpSessionInfo wmsSessionInfo) Attach to WMS session, Internal usestatic intavSyncNameToId(String avSyncName) Get audio/video sync id from namevoidcheckSendMetadata(long adjTimecode, com.wowza.wms.rtp.model.RTPTrack rtpTrack) Check to see if we have sent onMetadata event, if not sendvoidClear SDP extra linesvoidClear all tracksbooleancreateStream(com.wowza.wms.rtp.model.RTPRequestStatus status) booleancreateStream(com.wowza.wms.rtp.model.RTPRequestStatus status, IApplicationInstance appInstance) Create IMediaStream, Internal use.describe(RTPSession rtspSession, int isStreamPacketizer, com.wowza.wms.rtp.model.RTPRequestStatus status, int[] validCodecsAudio, int[] validCodecsVideo) Get RTP describe detailsdescribe(RTPSession rtspSession, com.wowza.wms.rtp.model.RTPRequestStatus status) Execute describe commandcom.wowza.wms.rtp.model.RTPSDPPartsdescribeGetDetails(RTPSession rtspSession, int isStreamPacketizer, com.wowza.wms.rtp.model.RTPRequestStatus status, int[] validCodecsAudio, int[] validCodecsVideo) Get RTP describe detailsvoiddetachFromWMSSession(com.wowza.wms.server.RtmpSessionInfo wmsSessionInfo) Detach from WMS session, Internal use.voidExtract codec config information from SDP dataformatRTPInfo(long timecode, int videoSeq, int audioSeq) Format RTP infoGet application instanceGet the application instance nameGet the application namecom.wowza.wms.rtp.model.RTPTrackGet the most likely audio trackintintGet the audio/video sync method.doubleGet the duration of the stream if video on demandgetHost()Get hostgetLastPacketsByType(IMediaReader localReader, double startTime) Analyzes stream to get information, Internal use.getLastPacketsByType(IMediaStream localStream) Analyzes stream to get information, Internal use.intGet max time to wait for RTCP sender reports (milliseconds)Get the media caster stream type for this streamGet media reader if video on demand streambyte[]Get the onMetadata packet for this RTP streamintgetMode()Get the current play/publish modeintintGet the audio PID id if MPEG-TS streamintintintintintGet the video PID id if MPEG-TS streamlonggetNormalizedNTPTimecode(long timecode) Turn a millisecond timcode into an NTP timecodeGet the out hostGet the stream suffixes that are set for timing information loggingGet the RTP contextGet RTP destinationcom.wowza.wms.rtp.model.RTPStream.RTPInfogetRTPInfo(double startTime, int videoSeq, int audioSeq) Get the RTP infocom.wowza.wms.rtp.model.RTPStreamContextGet the bind RTSP bind IP addressGet the connection address typeGet the connection IP addressintGet the maximum number of waiting bytes allow for this RTSP sessionGet the origin address typeGet the origin IP addressGet session descriptionList<com.wowza.wms.rtp.model.RTPStream.RTSPExtraLine>Get extra SDP linesGet session nameintGet RTP session timeout (milliseconds)Get the SDP languageGet the RTP sessionGet the IMediaStreamGet all name/value pairs in the stream attributes collectionGet the stream extensionGet the stream idGet all name/value pairs in the stream info collectiongetStreamInfo(String key) Get stream info by nameGet the synchronization lock for this streamGet stream nameGet the stream name used for loggingGet the stream query stringlongGet the stream session idGet the stream session iplongGet the stream session versioncom.wowza.wms.rtp.model.RTPTrackGet the most likely stream trackGet the stream typecom.wowza.wms.rtp.model.RTPTrackGet track by idgetTrackId(String seq) Get track by sequence numberGet a list of track idsGet the transport modeintintgetUDPTransport(boolean isMulticast) Get the UDP transport for this streamgetVHost()Get vhostcom.wowza.wms.rtp.model.RTPTrackGet the most likely video tracklongGet the last timecode (milliseconds) sent for video on demandlongGet the video on demand play duration (milliseconds)longGet the video on demand start time (milliseconds)voididle(org.apache.mina.common.IoSession session, com.wowza.wms.server.RtmpResponseMessage resp) Process idle eventvoidincrementMediaInBytes(long bytes) Increment the media bytes in, Internal use.voidinitProperties(IApplicationInstance appInstance) booleanIs sync method based on RTCP packets (sender report)booleanbooleanAre we checking the ip address of each incoming RTP packetbooleanAre we checking the ssrc values of each incoming RTP packetbooleanbooleanTrue if forcing RTSP interleavedbooleanisLive()Is live streambooleanIs this a play streambooleanIs this a publish streambooleanIs the stream mode unknown (publish vs play)booleanIs MPEG-TS outbooleanisPaused()Is stream pausedbooleanSee if a publishing stream has enough data to start playbackbooleanbooleanbooleanIs reset stream trigger, Internal use.booleanReset audio/video sync on new RTCP packets (not just first packet)booleanLog audio/video sync on new RTCP packets (not just first packet)booleanbooleanbooleanisRTSP()Is this RTP Stream managed by RTSP sessionbooleanForce RTSP to use ports in SDP databooleanIs this RTP Stream managed by RTSP sessionbooleanSend RTCP SDES eventsbooleanisSRT()booleanIs stream startedbooleanisTimeout(long currTime, int timeout) Is the stream timeout outbooleanbooleanisWebRTC()voidlockRepeaterStreams(List<String> streamNames) Lock a list of live repeater stream names, Internal use.voidnotifyEncryptionProvider(com.wowza.wms.rtp.model.RTPTrack rtpTrack) voidvoidpause(com.wowza.wms.rtp.model.RTPRequestStatus status) Execute pausecom.wowza.wms.rtp.model.RTPStreamPlayResultplay(com.wowza.wms.rtp.model.RTPRequestStatus status) Execute playcom.wowza.wms.rtp.model.RTPStreamPlayResultplay(com.wowza.wms.rtp.model.RTPRequestStatus status, double startTime, double stopTime) Execute playvoidputRTSPSessionExtraLine(int location, String line) Add an extra line to the SDP datacom.wowza.wms.rtp.model.RTPStreamPlayResultrecord(com.wowza.wms.rtp.model.RTPRequestStatus status) Execute recordcom.wowza.wms.rtp.model.RTPStreamPlayResultrecord(com.wowza.wms.rtp.model.RTPRequestStatus status, double startTime, double stopTime) Execute recordcom.wowza.wms.rtp.model.RTPTrackremoveTrack(String trackId) Remove a track by idcom.wowza.wms.rtp.model.RTPTrackremoveTrackInternal(String trackId) Remove track by track idvoidReset sendMetadata flagvoidsetAppInstanceName(String appInstanceName) Set the application instance namevoidsetAppName(String appName) Get the application namevoidsetAVSyncMethod(int avSyncMethod) Set the audio/video sync method.voidsetBlockUDPOut(boolean blockUDPOut) voidsetCheckIpAddr(boolean checkIpAddr) Are we checking the ip address of each incoming RTP packetvoidsetCheckSSRC(boolean checkSSRC) Are we checking the ssrc values of each incoming RTP packetvoidsetForceMPEGTSOut(boolean isForceMPEGTSOut) voidsetForceRTSPInterleaved(boolean isForceRTSPInterleaved) True if forcing RTSP interleavedvoidSet hostvoidsetLive(boolean isLive) Is live streamvoidsetMaxRTCPWaitTime(int maxRTCPWaitTime) Set max time to wait for RTCP sender reports (milliseconds)voidsetMode(int mode) Set the play/publish modevoidsetMPEGTSAudioBitrate(int mpegtsAudioBitrate) voidsetMPEGTSAudioLanguage(String mpegtsAudioLanguage) voidsetMPEGTSAudioPID(int mpegtsAudioPID) Set the audio PID id if MPEG-TS streamvoidsetMPEGTSMagazineNumber(int mpegtsDVBTeletextMagazineNumber) voidsetMPEGTSOut(boolean isMPEGTSOut) Is MPEG-TS outvoidsetMPEGTSPageNumber(int mpegtsDVBTeletextPageNumber) voidsetMPEGTSProgramID(int mpegtsProgramId) voidsetMPEGTSVideoBitrate(int mpegtsVideoBitrate) voidsetMPEGTSVideoPID(int mpegtsVideoPID) Set the video PID id if MPEG-TS streamvoidsetOutHost(String outHost) Set out hostvoidsetRefuseIncomingUDPConnections(boolean refuseIncomingUDPConnections) voidsetRefuseOutgoingUDPConnections(boolean refuseOutgoingUDPConnections) voidsetResetPlayStream(boolean doResetPlayStream) Set reset stream triggervoidsetResyncAudioVideoOnSR(boolean resyncAudioVideoOnSR) Reset audio/video sync on new RTCP packets (not just first packet)voidsetResyncAudioVideoOnSRLog(boolean resyncAudioVideoOnSRLog) Log audio/video sync on new RTCP packets (not just first packet)voidSet the stream names that require to be logged for timing informationvoidsetRTPDestination(RTPDestination rtpDestination) Set RTP destinationvoidsetRTPIgnoreProfileLevelId(boolean rtpIgnoreProfileLevelId) voidsetRTPIgnoreSPropParameterSets(boolean rtpIgnoreSPropParameterSets) voidsetRTPStreamContext(com.wowza.wms.rtp.model.RTPStreamContext rtpStreamContext) voidsetRTSP(boolean isRTSP) Is this RTP Stream managed by RTSP sessionvoidsetRTSPAlwaysUseSDPPorts(boolean rtspAlwaysUseSDPPorts) Force RTSP to use ports in SDP datavoidsetRTSPBindIpAddress(String rtspBindIpAddress) Set the bind RTSP bind IP addressvoidsetRTSPConnectionAddressType(String rtspConnectionAddressType) Set the connection address typevoidsetRTSPConnectionIpAddress(String rtspConnectionIpAddress) Set the connection IP addressvoidsetRTSPMaximumPendingWriteBytes(int rtspMaximumPendingWriteBytes) Set the maximum number of waiting bytes allow for this RTSP sessionvoidsetRTSPOriginAddressType(String rtspOriginAddressType) Set the origin address typevoidsetRTSPOriginIpAddress(String rtspOriginIpAddress) Set the origin IP addressvoidsetRTSPPull(boolean isRTSPPull) Is this RTP Stream managed by RTSP sessionvoidsetRTSPSessionDescription(String rtspSessionDescription) Get session descriptionvoidsetRTSPSessionName(String rtspSessionName) Set session namevoidsetRTSPSessionTimeout(int rtspSessionTimeout) Set RTP session timeout (milliseconds)voidsetSDPLang(String sdpLang) Set the SDP languagevoidsetSDPTransportStr(String sdpTransportStr) voidsetSendSDESEvents(boolean sendSDESEvents) Send RTCP SDES eventsvoidsetSession(RTPSession session) Set the RTP sessionvoidsetSRT(boolean isSRT) voidsetStreamExt(String streamExt) Set the stream extensionvoidsetStreamName(String streamName) Set stream namevoidsetStreamNameLogging(String streamNameLogging) Set the stream name used for loggingvoidsetStreamQueryStr(String streamQueryStr) Set the stream query stringvoidsetStreamSessionId(long streamSessionId) Set the stream session idvoidsetStreamSessionIp(String streamSessionIp) Set the stream session ipvoidsetStreamSessionVersion(long streamSessionVersion) Set the stream session versionvoidsetStreamType(String streamType) Set the stream typevoidsetTransportMode(String transportMode) Set the transport modevoidsetUDPManagedDeliveryCount(int udpManagedDeliveryCount) voidsetUDPManagedDeliveryDelay(int udpManagedDeliveryDelay) voidsetUDPTransport(IUDPTransport udpTransport) voidsetVODLastTimeTC(long vodLastTimeTC) Set the last timecode (milliseconds) sent for video on demandvoidsetVODPlayLen(long vodPlayLen) Set the video on demand play duration (milliseconds)voidsetVODStartTimeTC(long vodStartTimeTC) Set the video on demand start time (milliseconds)voidsetWebRTC(boolean isWebRTC) voidshutdown(com.wowza.wms.rtp.model.RTPRequestStatus status) shutdown RTP stream, Internal use.com.wowza.wms.rtp.model.RTPTracksloppyGetTrack(String trackId) Sloppy method for finding track by name, Internal use.booleanReturn true if RTP stream contains a IMediaStreamvoidSwitch a stream to MPEG-TS, Internal use.voidtouch()Touch the stream so that it does not timeouttransportFindBestMatch(String transport) Based on a trasport string from SETUP command find best matchvoidUnlock live repeater streams
-
Field Details
-
SDPLOCATION_STREAM
public static final int SDPLOCATION_STREAM- See Also:
-
SDPLOCATION_AUDIO
public static final int SDPLOCATION_AUDIO- See Also:
-
SDPLOCATION_VIDEO
public static final int SDPLOCATION_VIDEO- See Also:
-
MODE_UNKNOWN
public static final int MODE_UNKNOWN- See Also:
-
MODE_PLAY
public static final int MODE_PLAY- See Also:
-
MODE_PUBLISH
public static final int MODE_PUBLISH- See Also:
-
AVSYNCMETHODS_UNKNOWN
public static final int AVSYNCMETHODS_UNKNOWN- See Also:
-
AVSYNCMETHODS_SENDERREPORT
public static final int AVSYNCMETHODS_SENDERREPORT- See Also:
-
AVSYNCMETHODS_SYSTEMCLOCK
public static final int AVSYNCMETHODS_SYSTEMCLOCK- See Also:
-
AVSYNCMETHODS_RTPTIMECODE
public static final int AVSYNCMETHODS_RTPTIMECODE- See Also:
-
STREAMINFO_SESSIONPROTOCOLVERSION
- See Also:
-
STREAMINFO_SESSIONPORIGIN
- See Also:
-
STREAMINFO_SESSIONNAME
- See Also:
-
STREAMINFO_SESSIONINFORMATION
- See Also:
-
STREAMINFO_SESSIONURI
- See Also:
-
STREAMINFO_SESSIONEMAILADDRESS
- See Also:
-
STREAMINFO_SESSIONPHONENUMBER
- See Also:
-
STREAMINFO_SESSIONCONNECTIONDATA
- See Also:
-
STREAMINFO_SESSIONBANDWIDTH
- See Also:
-
STREAMINFO_SESSIONTIMING
- See Also:
-
STREAMINFO_SESSIONREPEATTIMES
- See Also:
-
STREAMINFO_SESSIONTIMEZONES
- See Also:
-
STREAMINFO_SESSIONATTRIBUTES
- See Also:
-
DEFAULT_RTSPSESSIONNAME
- See Also:
-
DEFAULT_RTPIGNOREPROFILELEVELID
public static final boolean DEFAULT_RTPIGNOREPROFILELEVELID- See Also:
-
DEFAULT_RTPIGNORESPROPPARAMETERSETS
public static final boolean DEFAULT_RTPIGNORESPROPPARAMETERSETS- See Also:
-
DEFAULT_RTP_TRANSPORT_STR
- See Also:
-
-
Constructor Details
-
RTPStream
Constructor- Parameters:
context- RTP contextstreamId- stream id
-
-
Method Details
-
getRTPContext
Get the RTP context- Returns:
- RTP context
-
getStreamLock
Get the synchronization lock for this stream- Returns:
- synchronization lock for this stream
-
addTrack
public void addTrack(com.wowza.wms.rtp.model.RTPTrack track) Add a track- Parameters:
track- RTP track
-
removeTrack
Remove a track by id- Parameters:
trackId- track id- Returns:
- RTP track
-
addTrackInternal
public void addTrackInternal(com.wowza.wms.rtp.model.RTPTrack track) Add RTP track- Parameters:
track- RTP track
-
removeTrackInternal
Remove track by track id- Parameters:
trackId- track id- Returns:
- RTP track that was removed
-
clearTracks
public void clearTracks()Clear all tracks -
incrementMediaInBytes
public void incrementMediaInBytes(long bytes) Increment the media bytes in, Internal use.- Parameters:
bytes-
-
sloppyGetTrack
Sloppy method for finding track by name, Internal use.- Parameters:
trackId- track name- Returns:
- RTP track
-
getTrack
Get track by id- Parameters:
trackId- track id- Returns:
- RTP track
-
addTrackId
Add track- Parameters:
seq- sequence numbertrackId- track id
-
getTrackId
Get track by sequence number- Parameters:
seq- sequence number- Returns:
- RTP track
-
getTrackNames
Get a list of track ids- Returns:
- list of track ids
-
getSession
Get the RTP session- Returns:
- RTP session
-
setSession
Set the RTP session- Parameters:
session- RTP session
-
getStreamId
Get the stream id- Returns:
- stream id
-
getStream
Get the IMediaStream- Returns:
- stream (IMediaStream) interface
-
getAudioTrack
public com.wowza.wms.rtp.model.RTPTrack getAudioTrack()Get the most likely audio track- Returns:
- RTP track
-
getVideoTrack
public com.wowza.wms.rtp.model.RTPTrack getVideoTrack()Get the most likely video track- Returns:
- RTP track
-
getStreamTrack
public com.wowza.wms.rtp.model.RTPTrack getStreamTrack()Get the most likely stream track- Returns:
- RTP track
-
addStreamInfo
Add a name value pair to the stream info collection- Parameters:
key- namevalue- value
-
getStreamInfo
Get stream info by name- Parameters:
key- name- Returns:
- value
-
addStreamAttribute
Add a name value pair to the stream attribute collection- Parameters:
key- namevalue- value
-
getVHost
Get vhost- Returns:
- vhost
-
getHost
Get host- Returns:
- host
-
setHost
Set host- Parameters:
host- host
-
streamExists
public boolean streamExists()Return true if RTP stream contains a IMediaStream- Returns:
- true if RTP stream contains a IMediaStream
-
isPublishStreamReady
public boolean isPublishStreamReady()See if a publishing stream has enough data to start playback- Returns:
- true, if the stream is ready for playback
-
lockRepeaterStreams
Lock a list of live repeater stream names, Internal use.- Parameters:
streamNames- stream names
-
addLockRepeaterStreams
-
unlockRepeaterStreams
public void unlockRepeaterStreams()Unlock live repeater streams -
getMediaCasterType
Get the media caster stream type for this stream- Returns:
- media caster stream type
-
createStream
public boolean createStream(com.wowza.wms.rtp.model.RTPRequestStatus status) -
createStream
public boolean createStream(com.wowza.wms.rtp.model.RTPRequestStatus status, IApplicationInstance appInstance) Create IMediaStream, Internal use.- Parameters:
status- status- Returns:
- true if successful
-
shutdown
public void shutdown(com.wowza.wms.rtp.model.RTPRequestStatus status) shutdown RTP stream, Internal use.- Parameters:
status- status
-
initProperties
-
getAppInstance
Get application instance- Returns:
- application instance
-
isPaused
public boolean isPaused()Is stream paused- Returns:
- true if stream is paused
-
getDuration
public double getDuration()Get the duration of the stream if video on demand- Returns:
- duration in seconds
-
isResetPlayStream
public boolean isResetPlayStream()Is reset stream trigger, Internal use.- Returns:
- true if reset trigger
-
setResetPlayStream
public void setResetPlayStream(boolean doResetPlayStream) Set reset stream trigger- Parameters:
doResetPlayStream- true if reset trigger
-
record
public com.wowza.wms.rtp.model.RTPStreamPlayResult record(com.wowza.wms.rtp.model.RTPRequestStatus status) Execute record- Parameters:
status- RTP status- Returns:
- status
-
record
public com.wowza.wms.rtp.model.RTPStreamPlayResult record(com.wowza.wms.rtp.model.RTPRequestStatus status, double startTime, double stopTime) Execute record- Parameters:
status- RTP statusstartTime- playback start timestopTime- playback stop time- Returns:
- status
-
play
public com.wowza.wms.rtp.model.RTPStreamPlayResult play(com.wowza.wms.rtp.model.RTPRequestStatus status) Execute play- Parameters:
status- RTP status- Returns:
- status
-
play
public com.wowza.wms.rtp.model.RTPStreamPlayResult play(com.wowza.wms.rtp.model.RTPRequestStatus status, double startTime, double stopTime) Execute play- Parameters:
status- RTP statusstartTime- playback start timestopTime- playback stop time- Returns:
- status
-
attachToWMSSession
public void attachToWMSSession(com.wowza.wms.server.RtmpSessionInfo wmsSessionInfo) Attach to WMS session, Internal use- Parameters:
wmsSessionInfo- session info
-
detachFromWMSSession
public void detachFromWMSSession(com.wowza.wms.server.RtmpSessionInfo wmsSessionInfo) Detach from WMS session, Internal use.- Parameters:
wmsSessionInfo- session info
-
pause
public void pause(com.wowza.wms.rtp.model.RTPRequestStatus status) Execute pause- Parameters:
status- RTP status
-
announce
public void announce(com.wowza.wms.rtp.model.RTPRequestStatus status) Execute announce command- Parameters:
status- RTP status
-
isResyncAudioVideoOnSR
public boolean isResyncAudioVideoOnSR()Reset audio/video sync on new RTCP packets (not just first packet)- Returns:
- true if resetting audio/video on new RTCP packets
-
setResyncAudioVideoOnSR
public void setResyncAudioVideoOnSR(boolean resyncAudioVideoOnSR) Reset audio/video sync on new RTCP packets (not just first packet)- Parameters:
resyncAudioVideoOnSR- true if resetting audio/video on new RTCP packets
-
isResyncAudioVideoOnSRLog
public boolean isResyncAudioVideoOnSRLog()Log audio/video sync on new RTCP packets (not just first packet)- Returns:
- true if logging audio/video on new RTCP packets
-
setResyncAudioVideoOnSRLog
public void setResyncAudioVideoOnSRLog(boolean resyncAudioVideoOnSRLog) Log audio/video sync on new RTCP packets (not just first packet)- Parameters:
resyncAudioVideoOnSRLog- true if logging audio/video on new RTCP packets
-
setResyncAudioVideoOnSRLogStreamSuffix
Set the stream names that require to be logged for timing information- Parameters:
names-
-
getResyncAudioVideoOnSRLogStreamSuffix
Get the stream suffixes that are set for timing information logging- Returns:
- resyncAudioVideoOnSRLogStreamNames
-
getMetadataPacket
public byte[] getMetadataPacket()Get the onMetadata packet for this RTP stream- Returns:
- onMetadata packet
-
resetSentMetadataFlag
public void resetSentMetadataFlag()Reset sendMetadata flag -
checkSendMetadata
public void checkSendMetadata(long adjTimecode, com.wowza.wms.rtp.model.RTPTrack rtpTrack) Check to see if we have sent onMetadata event, if not send- Parameters:
adjTimecode- timecode (milliseconds)
-
extractCodecConfigFromTrackInfo
public void extractCodecConfigFromTrackInfo()Extract codec config information from SDP data -
getStreamType
Get the stream type- Returns:
- stream type
-
setStreamType
Set the stream type- Parameters:
streamType- stream type
-
getAppName
Get the application name- Returns:
- application name
-
setAppName
Get the application name- Parameters:
appName- application name
-
getAppInstanceName
Get the application instance name- Returns:
- application instance name
-
setAppInstanceName
Set the application instance name- Parameters:
appInstanceName- application instance name
-
getStreamExt
Get the stream extension- Returns:
- stream extension
-
setStreamExt
Set the stream extension- Parameters:
streamExt- stream extension
-
getStreamName
Get stream name- Returns:
- stream name
-
setStreamName
Set stream name- Parameters:
streamName- stream name
-
getStreamNameLogging
Get the stream name used for logging- Returns:
- stream name used for logging
-
setStreamNameLogging
Set the stream name used for logging- Parameters:
streamNameLogging- stream name used for logging
-
getStreamSessionId
public long getStreamSessionId()Get the stream session id- Returns:
- stream session id
-
setStreamSessionId
public void setStreamSessionId(long streamSessionId) Set the stream session id- Parameters:
streamSessionId- stream session id
-
getStreamSessionVersion
public long getStreamSessionVersion()Get the stream session version- Returns:
- stream session version
-
setStreamSessionVersion
public void setStreamSessionVersion(long streamSessionVersion) Set the stream session version- Parameters:
streamSessionVersion- stream session version
-
getStreamSessionIp
Get the stream session ip- Returns:
- stream session ip
-
setStreamSessionIp
Set the stream session ip- Parameters:
streamSessionIp- stream session ip
-
isCheckSSRC
public boolean isCheckSSRC()Are we checking the ssrc values of each incoming RTP packet- Returns:
- true if checking
-
setCheckSSRC
public void setCheckSSRC(boolean checkSSRC) Are we checking the ssrc values of each incoming RTP packet- Parameters:
checkSSRC- true if checking
-
isCheckIpAddr
public boolean isCheckIpAddr()Are we checking the ip address of each incoming RTP packet- Returns:
- true if checking ip address of each incoming RTP packet
-
setCheckIpAddr
public void setCheckIpAddr(boolean checkIpAddr) Are we checking the ip address of each incoming RTP packet- Parameters:
checkIpAddr- true if checking ip address of each incoming RTP packet
-
getUDPTransport
Get the UDP transport for this stream- Parameters:
isMulticast- true if multicast- Returns:
- UDP transport
-
getAVSyncMethod
public int getAVSyncMethod()Get the audio/video sync method. See AVSYNCMETHODS_*- Returns:
- audio/video sync method. See AVSYNCMETHODS_*
-
setAVSyncMethod
public void setAVSyncMethod(int avSyncMethod) Set the audio/video sync method. See AVSYNCMETHODS_*- Parameters:
avSyncMethod- audio/video sync method. See AVSYNCMETHODS_*
-
isAVSyncNonSR
public boolean isAVSyncNonSR()Is sync method based on RTCP packets (sender report)- Returns:
- true if based in RTCP sender reports
-
getMaxRTCPWaitTime
public int getMaxRTCPWaitTime()Get max time to wait for RTCP sender reports (milliseconds)- Returns:
- max time to wait for RTCP sender reports (milliseconds)
-
setMaxRTCPWaitTime
public void setMaxRTCPWaitTime(int maxRTCPWaitTime) Set max time to wait for RTCP sender reports (milliseconds)- Parameters:
maxRTCPWaitTime- max time to wait for RTCP sender reports (milliseconds)
-
getStreamInfo
Get all name/value pairs in the stream info collection- Returns:
- map of name/value pairs
-
getStreamAttributes
Get all name/value pairs in the stream attributes collection- Returns:
- map of name/value pairs
-
avSyncNameToId
Get audio/video sync id from name- Parameters:
avSyncName- audio/video sync name- Returns:
- audio/video sync id, see AVSYNCMETHODS_*
-
getMPEGTSAudioLanguage
-
setMPEGTSAudioLanguage
-
getMPEGTSProgramID
public int getMPEGTSProgramID() -
setMPEGTSProgramID
public void setMPEGTSProgramID(int mpegtsProgramId) -
getMPEGTSMagazineNumber
public int getMPEGTSMagazineNumber() -
setMPEGTSMagazineNumber
public void setMPEGTSMagazineNumber(int mpegtsDVBTeletextMagazineNumber) -
getMPEGTSPageNumber
public int getMPEGTSPageNumber() -
setMPEGTSPageNumber
public void setMPEGTSPageNumber(int mpegtsDVBTeletextPageNumber) -
getMPEGTSVideoPID
public int getMPEGTSVideoPID()Get the video PID id if MPEG-TS stream- Returns:
- video PID id if MPEG-TS stream
-
setMPEGTSVideoPID
public void setMPEGTSVideoPID(int mpegtsVideoPID) Set the video PID id if MPEG-TS stream- Parameters:
mpegtsVideoPID- video PID id if MPEG-TS stream
-
getMPEGTSAudioPID
public int getMPEGTSAudioPID()Get the audio PID id if MPEG-TS stream- Returns:
- audio PID id if MPEG-TS stream
-
setMPEGTSAudioPID
public void setMPEGTSAudioPID(int mpegtsAudioPID) Set the audio PID id if MPEG-TS stream- Parameters:
mpegtsAudioPID- audio PID id if MPEG-TS stream
-
isRTSP
public boolean isRTSP()Is this RTP Stream managed by RTSP session- Returns:
- true if managed by RTSP session
-
setRTSP
public void setRTSP(boolean isRTSP) Is this RTP Stream managed by RTSP session- Parameters:
isRTSP- true if managed by RTSP session
-
isRTSPPull
public boolean isRTSPPull()Is this RTP Stream managed by RTSP session- Returns:
- true if managed by RTSP session
-
setRTSPPull
public void setRTSPPull(boolean isRTSPPull) Is this RTP Stream managed by RTSP session- Parameters:
isRTSPPull- true if managed by RTSP session
-
getStreamQueryStr
Get the stream query string- Returns:
- stream query string
-
setStreamQueryStr
Set the stream query string- Parameters:
streamQueryStr- stream query string
-
getModeName
-
isModePublish
public boolean isModePublish()Is this a publish stream- Returns:
- true if publish stream
-
isModePlay
public boolean isModePlay()Is this a play stream- Returns:
- true if play stream
-
isModeUknown
public boolean isModeUknown()Is the stream mode unknown (publish vs play)- Returns:
- true if stream mode is unknown
-
getOutHost
Get the out host- Returns:
- out host
-
setOutHost
Set out host- Parameters:
outHost- out host
-
idle
public void idle(org.apache.mina.common.IoSession session, com.wowza.wms.server.RtmpResponseMessage resp) Process idle event- Parameters:
session- io sessionresp- idle request
-
getLastPacketsByType
Analyzes stream to get information, Internal use.- Parameters:
localStream- local stream- Returns:
- important packets
-
getLastPacketsByType
Analyzes stream to get information, Internal use.- Parameters:
localReader- media readerstartTime- start time- Returns:
- important packets
-
switchSetupToMPEGTS
public void switchSetupToMPEGTS()Switch a stream to MPEG-TS, Internal use. -
describe
Execute describe command- Parameters:
rtspSession- RTP sessionstatus- RTP status- Returns:
- describe response
-
describe
public String describe(RTPSession rtspSession, int isStreamPacketizer, com.wowza.wms.rtp.model.RTPRequestStatus status, int[] validCodecsAudio, int[] validCodecsVideo) Get RTP describe details- Parameters:
rtspSession- rtp sessionisStreamPacketizer- is packetizing as a streamstatus- statusvalidCodecsAudio- list of valid audio codecsvalidCodecsVideo- list of valid video codecs- Returns:
- SDP info as a string
-
describeGetDetails
public com.wowza.wms.rtp.model.RTPSDPParts describeGetDetails(RTPSession rtspSession, int isStreamPacketizer, com.wowza.wms.rtp.model.RTPRequestStatus status, int[] validCodecsAudio, int[] validCodecsVideo) Get RTP describe details- Parameters:
rtspSession- rtp sessionisStreamPacketizer- is packetizing as a streamstatus- statusvalidCodecsAudio- list of valid audio codecsvalidCodecsVideo- list of valid video codecs- Returns:
- SDP parts
-
getMode
public int getMode()Get the current play/publish mode- Returns:
- play/publish mode
-
setMode
public void setMode(int mode) Set the play/publish mode- Parameters:
mode- play/publish mode
-
getTransportMode
Get the transport mode- Returns:
- transport mode
-
setTransportMode
Set the transport mode- Parameters:
transportMode- transport mode
-
getNormalizedNTPTimecode
public long getNormalizedNTPTimecode(long timecode) Turn a millisecond timcode into an NTP timecode- Parameters:
timecode- timecode (milliseconds)- Returns:
- NTP timecode
-
isForceRTSPInterleaved
public boolean isForceRTSPInterleaved()True if forcing RTSP interleaved- Returns:
- true if forcing RTSP interleaved
-
setForceRTSPInterleaved
public void setForceRTSPInterleaved(boolean isForceRTSPInterleaved) True if forcing RTSP interleaved- Parameters:
isForceRTSPInterleaved- true if forcing RTSP interleaved
-
getRTPInfo
public com.wowza.wms.rtp.model.RTPStream.RTPInfo getRTPInfo(double startTime, int videoSeq, int audioSeq) Get the RTP info- Parameters:
startTime- start timevideoSeq- video sequence numberaudioSeq- audio sequence number- Returns:
- RTP info string
-
formatRTPInfo
Format RTP info- Parameters:
timecode- timecodevideoSeq- video sequence numberaudioSeq- audio sequence number- Returns:
- RTP Info string
-
getRTSPSessionName
Get session name- Returns:
- session name
-
setRTSPSessionName
Set session name- Parameters:
rtspSessionName- session name
-
getRTSPSessionDescription
Get session description- Returns:
- session description
-
setRTSPSessionDescription
Get session description- Parameters:
rtspSessionDescription- session description
-
isSendSDESEvents
public boolean isSendSDESEvents()Send RTCP SDES events- Returns:
- true if sending RTCP SDES events
-
setSendSDESEvents
public void setSendSDESEvents(boolean sendSDESEvents) Send RTCP SDES events- Parameters:
sendSDESEvents- true if sending RTCP SDES events
-
isMPEGTSOut
public boolean isMPEGTSOut()Is MPEG-TS out- Returns:
- true if MPEG-TS out
-
setMPEGTSOut
public void setMPEGTSOut(boolean isMPEGTSOut) Is MPEG-TS out- Parameters:
isMPEGTSOut- true if MPEG-TS out
-
transportFindBestMatch
Based on a trasport string from SETUP command find best match- Parameters:
transport- trasport string- Returns:
- best match
-
getAutoAllocateInterleavePorts
public int getAutoAllocateInterleavePorts() -
isLive
public boolean isLive()Is live stream- Returns:
- true if live
-
setLive
public void setLive(boolean isLive) Is live stream- Parameters:
isLive- true if live
-
getMediaReader
Get media reader if video on demand stream- Returns:
- media reader
-
getRTSPSessionTimeout
public int getRTSPSessionTimeout()Get RTP session timeout (milliseconds)- Returns:
- RTP session timeout (milliseconds)
-
setRTSPSessionTimeout
public void setRTSPSessionTimeout(int rtspSessionTimeout) Set RTP session timeout (milliseconds)- Parameters:
rtspSessionTimeout- RTP session timeout (milliseconds)
-
getRTSPMaximumPendingWriteBytes
public int getRTSPMaximumPendingWriteBytes()Get the maximum number of waiting bytes allow for this RTSP session- Returns:
- maximum number of waiting bytes allow for this RTSP session
-
setRTSPMaximumPendingWriteBytes
public void setRTSPMaximumPendingWriteBytes(int rtspMaximumPendingWriteBytes) Set the maximum number of waiting bytes allow for this RTSP session- Parameters:
rtspMaximumPendingWriteBytes- maximum number of waiting bytes allow for this RTSP session
-
isTimeout
public boolean isTimeout(long currTime, int timeout) Is the stream timeout out- Parameters:
currTime- current timetimeout- timeout value- Returns:
- true if timed out
-
touch
public void touch()Touch the stream so that it does not timeout -
getRTSPBindIpAddress
Get the bind RTSP bind IP address- Returns:
- bind RTSP bind IP address
-
setRTSPBindIpAddress
Set the bind RTSP bind IP address- Parameters:
rtspBindIpAddress- bind RTSP bind IP address
-
getRTSPConnectionIpAddress
Get the connection IP address- Returns:
- connection IP address
-
setRTSPConnectionIpAddress
Set the connection IP address- Parameters:
rtspConnectionIpAddress- connection IP address
-
getRTSPConnectionAddressType
Get the connection address type- Returns:
- connection address type
-
setRTSPConnectionAddressType
Set the connection address type- Parameters:
rtspConnectionAddressType- connection address type
-
getRTSPOriginIpAddress
Get the origin IP address- Returns:
- origin IP address
-
setRTSPOriginIpAddress
Set the origin IP address- Parameters:
rtspOriginIpAddress- origin IP address
-
getRTSPOriginAddressType
Get the origin address type- Returns:
- origin address type
-
setRTSPOriginAddressType
Set the origin address type- Parameters:
rtspOriginAddressType- origin address type
-
getVODStartTimeTC
public long getVODStartTimeTC()Get the video on demand start time (milliseconds)- Returns:
- video on demand start time (milliseconds)
-
setVODStartTimeTC
public void setVODStartTimeTC(long vodStartTimeTC) Set the video on demand start time (milliseconds)- Parameters:
vodStartTimeTC- video on demand start time (milliseconds)
-
getVODLastTimeTC
public long getVODLastTimeTC()Get the last timecode (milliseconds) sent for video on demand- Returns:
- last timecode (milliseconds) sent for video on demand
-
setVODLastTimeTC
public void setVODLastTimeTC(long vodLastTimeTC) Set the last timecode (milliseconds) sent for video on demand- Parameters:
vodLastTimeTC- last timecode (milliseconds) sent for video on demand
-
getVODPlayLen
public long getVODPlayLen()Get the video on demand play duration (milliseconds)- Returns:
- video on demand play duration (milliseconds)
-
setVODPlayLen
public void setVODPlayLen(long vodPlayLen) Set the video on demand play duration (milliseconds)- Parameters:
vodPlayLen- video on demand play duration (milliseconds)
-
isStreamStarted
public boolean isStreamStarted()Is stream started- Returns:
- true if stream has started playback
-
isRTSPAlwaysUseSDPPorts
public boolean isRTSPAlwaysUseSDPPorts()Force RTSP to use ports in SDP data- Returns:
- true if using ports in SDP data
-
setRTSPAlwaysUseSDPPorts
public void setRTSPAlwaysUseSDPPorts(boolean rtspAlwaysUseSDPPorts) Force RTSP to use ports in SDP data- Parameters:
rtspAlwaysUseSDPPorts- true if using ports in SDP data
-
putRTSPSessionExtraLine
Add an extra line to the SDP data- Parameters:
location- location of line, see SDPLOCATION_line- line to add
-
clearRTSPSessionExtraLines
public void clearRTSPSessionExtraLines()Clear SDP extra lines -
getRTSPSessionExtraLines
Get extra SDP lines- Returns:
- extra SDP lines
-
getRTPDestination
Get RTP destination- Returns:
- RTP destination
-
setRTPDestination
Set RTP destination- Parameters:
rtpDestination- RTP destination
-
getSDPLang
Get the SDP language- Returns:
- SDP language
-
setSDPLang
Set the SDP language- Parameters:
sdpLang- SDP language
-
isRTPIgnoreProfileLevelId
public boolean isRTPIgnoreProfileLevelId() -
setRTPIgnoreProfileLevelId
public void setRTPIgnoreProfileLevelId(boolean rtpIgnoreProfileLevelId) -
getUDPManagedDeliveryDelay
public int getUDPManagedDeliveryDelay() -
setUDPManagedDeliveryDelay
public void setUDPManagedDeliveryDelay(int udpManagedDeliveryDelay) -
getUDPManagedDeliveryCount
public int getUDPManagedDeliveryCount() -
setUDPManagedDeliveryCount
public void setUDPManagedDeliveryCount(int udpManagedDeliveryCount) -
isForceMPEGTSOut
public boolean isForceMPEGTSOut() -
setForceMPEGTSOut
public void setForceMPEGTSOut(boolean isForceMPEGTSOut) -
isBlockUDPOut
public boolean isBlockUDPOut() -
setBlockUDPOut
public void setBlockUDPOut(boolean blockUDPOut) -
getMPEGTSAudioBitrate
public int getMPEGTSAudioBitrate() -
setMPEGTSAudioBitrate
public void setMPEGTSAudioBitrate(int mpegtsAudioBitrate) -
getMPEGTSVideoBitrate
public int getMPEGTSVideoBitrate() -
setMPEGTSVideoBitrate
public void setMPEGTSVideoBitrate(int mpegtsVideoBitrate) -
isRTPIgnoreSPropParameterSets
public boolean isRTPIgnoreSPropParameterSets() -
setRTPIgnoreSPropParameterSets
public void setRTPIgnoreSPropParameterSets(boolean rtpIgnoreSPropParameterSets) -
getRTPStreamContext
public com.wowza.wms.rtp.model.RTPStreamContext getRTPStreamContext() -
setRTPStreamContext
public void setRTPStreamContext(com.wowza.wms.rtp.model.RTPStreamContext rtpStreamContext) -
isRefuseIncomingUDPConnections
public boolean isRefuseIncomingUDPConnections() -
setRefuseIncomingUDPConnections
public void setRefuseIncomingUDPConnections(boolean refuseIncomingUDPConnections) -
isRefuseOutgoingUDPConnections
public boolean isRefuseOutgoingUDPConnections() -
setRefuseOutgoingUDPConnections
public void setRefuseOutgoingUDPConnections(boolean refuseOutgoingUDPConnections) -
notifyEncryptionProviderAllTracks
public void notifyEncryptionProviderAllTracks() -
notifyEncryptionProvider
public void notifyEncryptionProvider(com.wowza.wms.rtp.model.RTPTrack rtpTrack) -
isUDPTransportOverride
public boolean isUDPTransportOverride() -
setUDPTransport
-
getSDPTransportStr
-
setSDPTransportStr
-
isWebRTC
public boolean isWebRTC() -
setWebRTC
public void setWebRTC(boolean isWebRTC) -
isSRT
public boolean isSRT() -
setSRT
public void setSRT(boolean isSRT) -
getStreamHandlerLock
-