Interface IDvrStreamStore
-
public interface IDvrStreamStore
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addDvrChunkListener(IDvrStoreChunkListener listener)
Add (very fine) listener for chunk events.void
addManifestEntries(java.util.List<DvrManifestEntry> entries)
boolean
canPlay()
Is this store capable of playing.boolean
canRecord()
Is this store capable of recording.IApplicationInstance
getAppInstance()
Get associated application instance.IDvrChunker
getChunker()
long
getClosestStartTime(int type, long t)
String
getContextStr()
Get stream context string, useful for logging.com.wowza.wms.dvr.DvrChunk
getDvrChunkAtTime(int fragmentType, long t)
com.wowza.wms.dvr.DvrChunk
getDvrChunkByIndex(int fragmentType, long index)
com.wowza.wms.dvr.DvrChunk
getDvrChunkNearTime(int fragmentType, long t, long delta)
IDvrStreamManager
getDvrManager()
Get DVR Stream Managerint
getDvrStorageWindowSeconds()
Get DVR window size.com.wowza.wms.dvr.io.IDvrFileSystem
getFileSystem()
IDvrManifest
getManifest()
Get manifestWMSProperties
getProperties()
Get stream store properties.IDvrPurgeController
getPurgeController()
Get purge controller for stream store.java.util.List<DvrManifestEntry>
getRecordedEntriesWithLimit(int fragmentType, long t, int limit)
DvrManifestEntry
getRecordedEntryByIndex(int fragmentType, long index)
DvrManifestEntry
getRecordedEntryByTime(int fragmentType, long t)
String
getStreamName()
Get versioned stream name.com.wowza.wms.dvr.DvrTimeMapper
getTimeMapper()
Get time mapper, which maps between DVR, real and packet time.boolean
hasAudio()
Does this store have audio.boolean
hasData()
Does this store have data.boolean
hasEncryption()
Does this store contain encryption informationboolean
hasOnMetadata()
Does this store have on metadata.boolean
hasVideo()
Does this store have video.void
init()
Initialize DVR stream store.boolean
isLive()
Is store currently live For an origin,isRecording()
andisLive()
will typically return the same result.boolean
isLoaded()
boolean
isRecording()
Is store currently recording.boolean
isRecordingPaused()
Is store currently paused while recording.boolean
pauseRecording()
Request that stream recording pause.void
purgeEntries(DvrManifestEntryRangeGroup rangeGroup)
Purge entries from storevoid
removeDvrChunkListener(IDvrStoreChunkListener listener)
Remove (very fine) listener for chunk events.void
reset()
boolean
resumeRecording()
Request that stream recording resume.void
setCanPlay(boolean canPlay)
Set the Stream Stores ability to play.void
setCanRecord(boolean canRecord)
Set the Stream Stores ability to record.void
setHasEncryption(boolean hasEncryption)
Set whether the store has encryption.void
setReadCacheEnable(boolean enable)
Set the state of the read cachevoid
shutdown()
void
shutdownReadCache()
Shutdown the read cache, this should get called when the store shuts down.boolean
startRecording()
Request that recording start.boolean
stopRecording()
Request that stream recording stop.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)
boolean
storeOnMetadata(long pt, long utc, AMFPacket metaPacket)
-
-
-
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
-
getDvrStorageWindowSeconds
int getDvrStorageWindowSeconds()
Get DVR window size. This may be set by setting the IDvrStreamStore's propertyIDvrConstants.PROPERTY_WINDOW_DURATION
after the store is created and before it is initialized by using theIDvrStoreListener.dvrStreamStoreCreate(IDvrStreamStore)
- Returns:
- window size in seconds (0 means infinite window size)
-
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()
-
getChunker
IDvrChunker getChunker()
-
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.
-
startRecording
boolean startRecording()
Request that recording start.Used internally. Clients should call
ILiveStreamDvrRecorder.startRecording()
.Success occurs if the stream canRecord
canRecord()
and the stream is not already in the recording stateisRecording()
.- Returns:
- true if successful.
-
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 chunksUsed 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()
andisLive()
will typically return the same result. On an edge,isRecording()
will always be false. ButisLive()
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)
-
-