Interface IDvrStreamStore


  • public interface IDvrStreamStore
    • Method Detail

      • init

        void init()
        Initialize DVR stream store.
      • reset

        void reset()
      • shutdown

        void shutdown()
      • setReadCacheEnable

        void setReadCacheEnable​(boolean enable)
        Set the state of the read cache
        Parameters:
        enable -
      • shutdownReadCache

        void shutdownReadCache()
        Shutdown the read cache, this should get called when the store shuts down.
      • getProperties

        WMSProperties getProperties()
        Get stream store properties.
        Returns:
        properties
      • getStreamName

        String getStreamName()
        Get versioned stream name.
        Returns:
        (versioned) stream name
      • getContextStr

        String getContextStr()
        Get stream context string, useful for logging.
        Returns:
        stream context string
      • getDvrManager

        IDvrStreamManager getDvrManager()
        Get DVR Stream Manager
        Returns:
        DVR Stream Manager
      • getAppInstance

        IApplicationInstance getAppInstance()
        Get associated application instance.
        Returns:
        application instance.
      • getManifest

        IDvrManifest getManifest()
        Get manifest
        Returns:
        manifest
      • getTimeMapper

        com.wowza.wms.dvr.DvrTimeMapper getTimeMapper()
        Get time mapper, which maps between DVR, real and packet time.
        Returns:
        time mapper
      • getPurgeController

        IDvrPurgeController getPurgeController()
        Get purge controller for stream store.
        Returns:
        purge controller
      • getFileSystem

        com.wowza.wms.dvr.io.IDvrFileSystem getFileSystem()
      • canRecord

        boolean canRecord()
        Is this store capable of recording.
        Returns:
        true if store can record
      • isLoaded

        boolean isLoaded()
      • setCanRecord

        void setCanRecord​(boolean canRecord)
        Set the Stream Stores ability to record.

        Note: Must be called when stream is not recording.

        Parameters:
        canRecord -
      • canPlay

        boolean canPlay()
        Is this store capable of playing.
        Returns:
        true if store can play
      • setCanPlay

        void setCanPlay​(boolean canPlay)
        Set the Stream Stores ability to play.

        Note: Must be called when stream is not playing.

        Parameters:
        canPlay -
      • setHasEncryption

        void setHasEncryption​(boolean hasEncryption)
        Set whether the store has encryption. Used internally.

        Note: Must be called when stream is not playing.

        Parameters:
        hasEncryption - if store has encryption
      • hasEncryption

        boolean hasEncryption()
        Does this store contain encryption information
        Returns:
        true if store contains encryption
      • hasVideo

        boolean hasVideo()
        Does this store have video.
        Returns:
        true if store contains video, false otherwise.
      • hasAudio

        boolean hasAudio()
        Does this store have audio.
        Returns:
        true if store contains audio, false otherwise.
      • hasData

        boolean hasData()
        Does this store have data.
        Returns:
        true if store contains data, false otherwise.
      • hasOnMetadata

        boolean hasOnMetadata()
        Does this store have on metadata.
        Returns:
        true if store contains on metadata, false otherwise.
      • pauseRecording

        boolean pauseRecording()
        Request that stream recording pause.

        Used internally. Clients should call ILiveStreamDvrRecorder.pauseRecording().

        Success occurs if the stream is not already paused.

        Returns:
        true if successful.
      • resumeRecording

        boolean resumeRecording()
        Request that stream recording resume.

        Used internally. Clients should call ILiveStreamDvrRecorder.resumeRecording().

        Success occurs if the stream was previously paused.

        Returns:
        true if successful.
      • stopRecording

        boolean stopRecording()
        Request that stream recording stop. This shuts down saving of chunks

        Used internally. Clients should call ILiveStreamDvrRecorder.stopRecording().

        Success only occurs if the stream is already in the recording state isRecording().

        Returns:
        true if successful.
      • isRecordingPaused

        boolean isRecordingPaused()
        Is store currently paused while recording.
        Returns:
        true if recording is paused.
      • isRecording

        boolean isRecording()
        Is store currently recording. This will always be false for an edge.
        Returns:
        true if recording
      • isLive

        boolean isLive()
        Is store currently live For an origin, isRecording() and isLive() will typically return the same result. On an edge, isRecording() will always be false. But isLive() will reflect the status of the repeated stream.
        Returns:
        true if live
      • storeChunks

        com.wowza.wms.dvr.DvrChunkStorageInfo storeChunks​(int vDuration,
                                                          com.wowza.wms.dvr.DvrPacketHolder vPackets,
                                                          int aDuration,
                                                          com.wowza.wms.dvr.DvrPacketHolder aPackets,
                                                          int dDuration,
                                                          com.wowza.wms.dvr.DvrPacketHolder dPackets)
      • storeOnMetadata

        boolean storeOnMetadata​(long pt,
                                long utc,
                                AMFPacket metaPacket)
      • purgeEntries

        void purgeEntries​(DvrManifestEntryRangeGroup rangeGroup)
        Purge entries from store
        Parameters:
        rangeGroup - s set of ranges for purging
      • addManifestEntries

        void addManifestEntries​(java.util.List<DvrManifestEntry> entries)
      • addDvrChunkListener

        void addDvrChunkListener​(IDvrStoreChunkListener listener)
        Add (very fine) listener for chunk events.
        Parameters:
        listener - listener
      • removeDvrChunkListener

        void removeDvrChunkListener​(IDvrStoreChunkListener listener)
        Remove (very fine) listener for chunk events.
        Parameters:
        listener - listener
      • getRecordedEntriesWithLimit

        java.util.List<DvrManifestEntry> getRecordedEntriesWithLimit​(int fragmentType,
                                                                     long t,
                                                                     int limit)
      • getRecordedEntryByIndex

        DvrManifestEntry getRecordedEntryByIndex​(int fragmentType,
                                                 long index)
      • getRecordedEntryByTime

        DvrManifestEntry getRecordedEntryByTime​(int fragmentType,
                                                long t)
      • getDvrChunkByIndex

        com.wowza.wms.dvr.DvrChunk getDvrChunkByIndex​(int fragmentType,
                                                      long index)
      • getDvrChunkAtTime

        com.wowza.wms.dvr.DvrChunk getDvrChunkAtTime​(int fragmentType,
                                                     long t)
      • getDvrChunkNearTime

        com.wowza.wms.dvr.DvrChunk getDvrChunkNearTime​(int fragmentType,
                                                       long t,
                                                       long delta)
      • getClosestStartTime

        long getClosestStartTime​(int type,
                                 long t)