IDvrStreamVersionHandlerpublic class DefaultDvrStreamVersionHandler extends Object implements IDvrStreamVersionHandler
| Constructor | Description |
|---|---|
DefaultDvrStreamVersionHandler() |
| Modifier and Type | Method | Description |
|---|---|---|
IDvrStreamStore |
determineExistingStoreForPlaying(IDvrStreamManager dvrMgr,
String baseStreamName) |
When a session requests a stream store w/o specifying the version, we need gto determine the version of the stream to store.
|
IDvrStreamStore |
determineExistingStoreForRecording(IDvrStreamManager dvrMgr,
String baseStreamName) |
After a set of versioned streams are loaded from disk, one of them may be designated the stream that will be recorded to (i.e.
|
String |
getArchiveStrategy(IDvrStreamManager dvrMgr,
String baseStreamName) |
Determine the archive strategy for a given set of streams.
|
boolean |
handleArchivedStream(IDvrStreamManager dvrMgr,
String baseStreamName,
String vStreamName,
java.util.SortedSet<Integer> versions,
com.wowza.wms.dvr.io.manifest.DvrManifestHolder manifestHolder) |
When a stream group inits, the file system is checked for older versions of the streams.
|
boolean |
shouldDeleteArchivedStream(IDvrStreamManager dvrMgr,
IDvrStreamStore store) |
Determine if a given stream store version should be deleted.
|
boolean |
shouldLoadArchivedStream(IDvrStreamManager dvrMgr,
String baseStreamName,
String vStreamName,
java.util.SortedSet<Integer> versions,
com.wowza.wms.dvr.io.manifest.DvrManifestHolder manifest) |
Determine if a given stream store version should be loaded into WMS.
|
public IDvrStreamStore determineExistingStoreForPlaying(IDvrStreamManager dvrMgr, String baseStreamName)
IDvrStreamVersionHandlerThe default implementation first checks the recording stream. If it 'canPlay(), it is returned. Otherwise, the highest versioned stream that canRecord set to true is used.
determineExistingStoreForPlaying in interface IDvrStreamVersionHandlerdvrMgr - The DVR Stream ManagerbaseStreamName - The base stream name (no version info). e.g. myStreamDefaultDvrStreamVersionHandlerpublic IDvrStreamStore determineExistingStoreForRecording(IDvrStreamManager dvrMgr, String baseStreamName)
IDvrStreamVersionHandlerThe default implementation says that if append mode, then the highest versioned stream that has canRecord set to true is used. But this API, allows for a more detailed logic.
determineExistingStoreForRecording in interface IDvrStreamVersionHandlerdvrMgr - The DVR Stream ManagerbaseStreamName - The base stream name (no version info). e.g. myStreamDefaultDvrStreamVersionHandlerpublic String getArchiveStrategy(IDvrStreamManager dvrMgr, String baseStreamName)
IDvrStreamVersionHandlerTypically, this returns the archive strategy as specified in Application.xml, but this API provides a hook for more detailed logic in determining the strategy.
getArchiveStrategy in interface IDvrStreamVersionHandlerdvrMgr - The DVR App Instance ManagerbaseStreamName - The base stream name (no version info). e.g. myStreamDefaultDvrStreamVersionHandler,
IDvrConstants.ARCHIVE_STRATEGY_APPEND,
IDvrConstants.ARCHIVE_STRATEGY_DELETE,
IDvrConstants.ARCHIVE_STRATEGY_VERSIONpublic boolean handleArchivedStream(IDvrStreamManager dvrMgr, String baseStreamName, String vStreamName, java.util.SortedSet<Integer> versions, com.wowza.wms.dvr.io.manifest.DvrManifestHolder manifestHolder)
IDvrStreamVersionHandlerTypically, 3 things can happen: The stream is ignored, loaded, or deleted.
handleArchivedStream in interface IDvrStreamVersionHandlerdvrMgr - The DVR Stream ManagerbaseStreamName - The base stream name (no version info). e.g. myStreamvStreamName - The version of the stream to be loaded.versions - A sorted set of all the versions that are attempting to be loadedmanifestHolder - The main manifest info of the streamDefaultDvrStreamVersionHandlerpublic boolean shouldDeleteArchivedStream(IDvrStreamManager dvrMgr, IDvrStreamStore store)
IDvrStreamVersionHandlershouldDeleteArchivedStream in interface IDvrStreamVersionHandlerdvrMgr - The DVR Stream Managerstore - The DVR storeDefaultDvrStreamVersionHandlerpublic boolean shouldLoadArchivedStream(IDvrStreamManager dvrMgr, String baseStreamName, String vStreamName, java.util.SortedSet<Integer> versions, com.wowza.wms.dvr.io.manifest.DvrManifestHolder manifest)
IDvrStreamVersionHandlershouldLoadArchivedStream in interface IDvrStreamVersionHandlerdvrMgr - The DVR Stream ManagerbaseStreamName - The base stream name (no version info). e.g. myStreamvStreamName - The version of the stream to be loaded.versions - A sorted set of all the versions that are attempting to be loadedmanifest - The main manifest info of the streamDefaultDvrStreamVersionHandler