Class RTPStream


  • public class RTPStream
    extends Object

    RTPStream: RTP Stream class which encapsulates an IMediaStream class for RTP streaming.

    • Constructor Detail

      • RTPStream

        public RTPStream​(RTPContext context,
                         String streamId)
        Constructor
        Parameters:
        context - RTP context
        streamId - stream id
    • Method Detail

      • getRTPContext

        public RTPContext getRTPContext()
        Get the RTP context
        Returns:
        RTP context
      • getStreamLock

        public Object 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

        public com.wowza.wms.rtp.model.RTPTrack removeTrack​(String trackId)
        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

        public com.wowza.wms.rtp.model.RTPTrack removeTrackInternal​(String trackId)
        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

        public com.wowza.wms.rtp.model.RTPTrack sloppyGetTrack​(String trackId)
        Sloppy method for finding track by name, Internal use.
        Parameters:
        trackId - track name
        Returns:
        RTP track
      • getTrack

        public com.wowza.wms.rtp.model.RTPTrack getTrack​(String trackId)
        Get track by id
        Parameters:
        trackId - track id
        Returns:
        RTP track
      • addTrackId

        public void addTrackId​(String seq,
                               String trackId)
        Add track
        Parameters:
        seq - sequence number
        trackId - track id
      • getTrackId

        public String getTrackId​(String seq)
        Get track by sequence number
        Parameters:
        seq - sequence number
        Returns:
        RTP track
      • getTrackNames

        public java.util.List<String> getTrackNames()
        Get a list of track ids
        Returns:
        list of track ids
      • getSession

        public RTPSession getSession()
        Get the RTP session
        Returns:
        RTP session
      • setSession

        public void setSession​(RTPSession session)
        Set the RTP session
        Parameters:
        session - RTP session
      • getStreamId

        public String getStreamId()
        Get the stream id
        Returns:
        stream id
      • getStream

        public IMediaStream 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

        public void addStreamInfo​(String key,
                                  String value)
        Add a name value pair to the stream info collection
        Parameters:
        key - name
        value - value
      • getStreamInfo

        public String getStreamInfo​(String key)
        Get stream info by name
        Parameters:
        key - name
        Returns:
        value
      • addStreamAttribute

        public void addStreamAttribute​(String key,
                                       String value)
        Add a name value pair to the stream attribute collection
        Parameters:
        key - name
        value - value
      • getVHost

        public IVHost getVHost()
        Get vhost
        Returns:
        vhost
      • getHost

        public String getHost()
        Get host
        Returns:
        host
      • setHost

        public void setHost​(String host)
        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

        public void lockRepeaterStreams​(java.util.List<String> streamNames)
        Lock a list of live repeater stream names, Internal use.
        Parameters:
        streamNames - stream names
      • addLockRepeaterStreams

        public void addLockRepeaterStreams​(String streamName,
                                           MediaCasterStreamItem mediaCasterStreamItem)
      • unlockRepeaterStreams

        public void unlockRepeaterStreams()
        Unlock live repeater streams
      • getMediaCasterType

        public String 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
      • getAppInstance

        public IApplicationInstance 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 status
        startTime - playback start time
        stopTime - 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 status
        startTime - playback start time
        stopTime - 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

        public void setResyncAudioVideoOnSRLogStreamSuffix​(String names)
        Set the stream names that require to be logged for timing information
        Parameters:
        names -
      • getResyncAudioVideoOnSRLogStreamSuffix

        public String 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

        public String getStreamType()
        Get the stream type
        Returns:
        stream type
      • setStreamType

        public void setStreamType​(String streamType)
        Set the stream type
        Parameters:
        streamType - stream type
      • getAppName

        public String getAppName()
        Get the application name
        Returns:
        application name
      • setAppName

        public void setAppName​(String appName)
        Get the application name
        Parameters:
        appName - application name
      • getAppInstanceName

        public String getAppInstanceName()
        Get the application instance name
        Returns:
        application instance name
      • setAppInstanceName

        public void setAppInstanceName​(String appInstanceName)
        Set the application instance name
        Parameters:
        appInstanceName - application instance name
      • getStreamExt

        public String getStreamExt()
        Get the stream extension
        Returns:
        stream extension
      • setStreamExt

        public void setStreamExt​(String streamExt)
        Set the stream extension
        Parameters:
        streamExt - stream extension
      • getStreamName

        public String getStreamName()
        Get stream name
        Returns:
        stream name
      • setStreamName

        public void setStreamName​(String streamName)
        Set stream name
        Parameters:
        streamName - stream name
      • getStreamNameLogging

        public String getStreamNameLogging()
        Get the stream name used for logging
        Returns:
        stream name used for logging
      • setStreamNameLogging

        public void setStreamNameLogging​(String streamNameLogging)
        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

        public String getStreamSessionIp()
        Get the stream session ip
        Returns:
        stream session ip
      • setStreamSessionIp

        public void setStreamSessionIp​(String streamSessionIp)
        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

        public IUDPTransport getUDPTransport​(boolean isMulticast)
        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

        public java.util.Map<String,​String> getStreamInfo()
        Get all name/value pairs in the stream info collection
        Returns:
        map of name/value pairs
      • getStreamAttributes

        public java.util.Map<String,​String> getStreamAttributes()
        Get all name/value pairs in the stream attributes collection
        Returns:
        map of name/value pairs
      • avSyncNameToId

        public static int avSyncNameToId​(String avSyncName)
        Get audio/video sync id from name
        Parameters:
        avSyncName - audio/video sync name
        Returns:
        audio/video sync id, see AVSYNCMETHODS_*
      • getMPEGTSAudioLanguage

        public String getMPEGTSAudioLanguage()
      • setMPEGTSAudioLanguage

        public void setMPEGTSAudioLanguage​(String mpegtsAudioLanguage)
      • 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

        public String getStreamQueryStr()
        Get the stream query string
        Returns:
        stream query string
      • setStreamQueryStr

        public void setStreamQueryStr​(String streamQueryStr)
        Set the stream query string
        Parameters:
        streamQueryStr - stream query string
      • getModeName

        public 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

        public String getOutHost()
        Get the out host
        Returns:
        out host
      • setOutHost

        public void setOutHost​(String outHost)
        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 session
        resp - idle request
      • getLastPacketsByType

        public AMFPacket[] getLastPacketsByType​(IMediaStream localStream)
        Analyzes stream to get information, Internal use.
        Parameters:
        localStream - local stream
        Returns:
        important packets
      • getLastPacketsByType

        public AMFPacket[] getLastPacketsByType​(IMediaReader localReader,
                                                double startTime)
        Analyzes stream to get information, Internal use.
        Parameters:
        localReader - media reader
        startTime - start time
        Returns:
        important packets
      • switchSetupToMPEGTS

        public void switchSetupToMPEGTS()
        Switch a stream to MPEG-TS, Internal use.
      • describe

        public String describe​(RTPSession rtspSession,
                               com.wowza.wms.rtp.model.RTPRequestStatus status)
        Execute describe command
        Parameters:
        rtspSession - RTP session
        status - 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 session
        isStreamPacketizer - is packetizing as a stream
        status - status
        validCodecsAudio - list of valid audio codecs
        validCodecsVideo - 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 session
        isStreamPacketizer - is packetizing as a stream
        status - status
        validCodecsAudio - list of valid audio codecs
        validCodecsVideo - 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

        public String getTransportMode()
        Get the transport mode
        Returns:
        transport mode
      • setTransportMode

        public void setTransportMode​(String transportMode)
        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 time
        videoSeq - video sequence number
        audioSeq - audio sequence number
        Returns:
        RTP info string
      • formatRTPInfo

        public String formatRTPInfo​(long timecode,
                                    int videoSeq,
                                    int audioSeq)
        Format RTP info
        Parameters:
        timecode - timecode
        videoSeq - video sequence number
        audioSeq - audio sequence number
        Returns:
        RTP Info string
      • getRTSPSessionName

        public String getRTSPSessionName()
        Get session name
        Returns:
        session name
      • setRTSPSessionName

        public void setRTSPSessionName​(String rtspSessionName)
        Set session name
        Parameters:
        rtspSessionName - session name
      • getRTSPSessionDescription

        public String getRTSPSessionDescription()
        Get session description
        Returns:
        session description
      • setRTSPSessionDescription

        public void setRTSPSessionDescription​(String rtspSessionDescription)
        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

        public String transportFindBestMatch​(String transport)
        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

        public IMediaReader 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 time
        timeout - timeout value
        Returns:
        true if timed out
      • touch

        public void touch()
        Touch the stream so that it does not timeout
      • getRTSPBindIpAddress

        public String getRTSPBindIpAddress()
        Get the bind RTSP bind IP address
        Returns:
        bind RTSP bind IP address
      • setRTSPBindIpAddress

        public void setRTSPBindIpAddress​(String rtspBindIpAddress)
        Set the bind RTSP bind IP address
        Parameters:
        rtspBindIpAddress - bind RTSP bind IP address
      • getRTSPConnectionIpAddress

        public String getRTSPConnectionIpAddress()
        Get the connection IP address
        Returns:
        connection IP address
      • setRTSPConnectionIpAddress

        public void setRTSPConnectionIpAddress​(String rtspConnectionIpAddress)
        Set the connection IP address
        Parameters:
        rtspConnectionIpAddress - connection IP address
      • getRTSPConnectionAddressType

        public String getRTSPConnectionAddressType()
        Get the connection address type
        Returns:
        connection address type
      • setRTSPConnectionAddressType

        public void setRTSPConnectionAddressType​(String rtspConnectionAddressType)
        Set the connection address type
        Parameters:
        rtspConnectionAddressType - connection address type
      • getRTSPOriginIpAddress

        public String getRTSPOriginIpAddress()
        Get the origin IP address
        Returns:
        origin IP address
      • setRTSPOriginIpAddress

        public void setRTSPOriginIpAddress​(String rtspOriginIpAddress)
        Set the origin IP address
        Parameters:
        rtspOriginIpAddress - origin IP address
      • getRTSPOriginAddressType

        public String getRTSPOriginAddressType()
        Get the origin address type
        Returns:
        origin address type
      • setRTSPOriginAddressType

        public void setRTSPOriginAddressType​(String rtspOriginAddressType)
        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

        public void putRTSPSessionExtraLine​(int location,
                                            String line)
        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

        public java.util.List<com.wowza.wms.rtp.model.RTPStream.RTSPExtraLine> getRTSPSessionExtraLines()
        Get extra SDP lines
        Returns:
        extra SDP lines
      • getRTPDestination

        public RTPDestination getRTPDestination()
        Get RTP destination
        Returns:
        RTP destination
      • setRTPDestination

        public void setRTPDestination​(RTPDestination rtpDestination)
        Set RTP destination
        Parameters:
        rtpDestination - RTP destination
      • getSDPLang

        public String getSDPLang()
        Get the SDP language
        Returns:
        SDP language
      • setSDPLang

        public void setSDPLang​(String sdpLang)
        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

        public void setUDPTransport​(IUDPTransport udpTransport)
      • getSDPTransportStr

        public String getSDPTransportStr()
      • setSDPTransportStr

        public void setSDPTransportStr​(String sdpTransportStr)
      • isWebRTC

        public boolean isWebRTC()
      • setWebRTC

        public void setWebRTC​(boolean isWebRTC)
      • isSRT

        public boolean isSRT()
      • setSRT

        public void setSRT​(boolean isSRT)
      • getStreamHandlerLock

        public Object getStreamHandlerLock()