ILiveStreamPacketizerpublic class LiveStreamPacketizerMPEGDash
extends com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerBase
| Modifier and Type | Field | Description |
|---|---|---|
protected String |
additionalLiveProfiles |
|
protected WMSProperties |
appProps |
|
protected int |
audioCodecId |
|
static int |
AUDIOGROUPCOUNT |
|
protected Class |
clazz |
|
protected String |
clazzName |
|
protected boolean |
enableHbbtvLiveProfile |
|
protected CencInfo |
encInfo |
|
protected boolean |
forceDisplaySizeToBeEven |
|
protected int |
lastBogusSequence |
|
protected String |
liveRepeaterEncryptionSharedSecret |
|
protected Object |
lock |
|
protected boolean |
logRepeaterItems |
|
protected int |
maxPackagingWarning |
|
protected int |
maxSegmentCount |
|
static int |
MAXSEGMENTLOGCOUNT |
|
protected long |
minimumUpdatePeriod |
|
protected String |
originRepeaterContext |
|
protected boolean |
packagingWarning |
|
protected int |
packagingWarningCtr |
|
static String |
PACKETIZER_NAME |
|
protected int |
playlistSegmentCount |
|
static int |
PLAYSTARTTOLERANCE |
|
protected boolean |
randomizeMediaName |
|
protected String |
randomSessionStr |
|
protected java.util.List<com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashRepeaterHolder> |
repeaterItems |
|
protected int |
repeaterSegmentCount |
|
protected long |
repeaterSeq |
|
protected int |
segmentDurationTarget |
|
static int |
SEGMENTDURATIONTOLERANCE |
|
protected IHTTPStreamerMPEGDashLiveStreamPacketizerChunkIdHandler |
segmentIdHandler |
|
protected com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashWriterHandler |
segmentWriterHandler |
|
protected com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashWriterHandler |
segmentWriterHandlerToBeKilled |
|
protected IMediaStream |
stream |
|
protected int |
videoCodecId |
|
static int |
WAITFORCODECTIME |
appInstance, captionDefaultLanguages, captionIngestType, captionsEnabled, captionUseStreamNameGroups, checkTimeoutInterval, DEFAULT_STREAMTIMEOUT, EVENT_PACKET, EVENT_RESETSTREAM, EVENT_STARTSTREAM, eventProcessCount, events, id, inProcessEvent, isActive, isRepeater, isRepeaterEdge, isRunning, lastCheckTime, lastEventProcessTC, lastStreamStartTime, lastStreamUpdate, liveStreamPacketizerItem, liveTimedTextProvider, maxEventCount, maxEventCountErrors, maxEventsPerRun, MAXEVENTSPERRUN, MEDIA_CHUNK_DURATION, packetizeAudio, packetizeData, packetizerName, packetizeVideo, properties, runnerLock, startStream, streamName, streamStartupTimeout, streamTimeout, timeoutLock| Constructor | Description |
|---|---|
LiveStreamPacketizerMPEGDash() |
| Modifier and Type | Method | Description |
|---|---|---|
void |
addPacket(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
com.wowza.wms.httpstreamer.model.LiveStreamPacketizerPacketHolder holder) |
|
void |
addRepeaterItem(com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashRepeaterHolder item) |
|
protected void |
createWriterHandler() |
|
protected void |
doResetStream(IMediaStream stream) |
|
void |
endChunk(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
long endTimecode,
long segmentChunkCount) |
|
void |
endSegment(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
long endTimecodeVideo,
long timecodeAudio) |
|
String |
getAdditionalLiveProfiles() |
|
com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment |
getAudioInit(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat) |
|
String |
getAudioMimeType(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat) |
|
com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment |
getAudioSegment(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat,
long index) |
|
com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment |
getAudioSegmentByTime(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat,
long time) |
|
String |
getAudioSegmentFileExtString(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat) |
|
String |
getAudioSegmentFormatString(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat) |
|
long |
getAudioSegmentIdFirst() |
|
long |
getAudioSegmentIdLast() |
|
long |
getBitrate() |
|
long |
getBitrateAudio() |
|
long |
getBitrateVideo() |
|
long |
getCalculatedAudioBitrateAverage() |
|
long |
getCalculatedAudioBitratePeak() |
|
long |
getCalculatedVideoBitrateAverage() |
|
long |
getCalculatedVideoBitratePeak() |
|
int |
getChunkDurationTarget() |
|
com.wowza.wms.media.model.MediaCodecInfoAudio |
getCodecInfoAudio() |
|
com.wowza.wms.media.model.MediaCodecInfoVideo |
getCodecInfoVideo() |
|
com.wowza.wms.httpstreamer.model.SegmentFormat |
getDefaultSegmentFormat() |
|
int |
getDefaultSegmentSetIndex() |
|
CencInfo |
getEncInfo() |
|
double |
getFrameRate() |
|
Object |
getLock() |
|
int |
getMaxSegmentCount() |
|
long |
getMinimumUpdatePeriod() |
|
int |
getPlaylistSegmentCount() |
|
String |
getRandomSessionStr() |
|
void |
getRepeaterItemsMPEGDash(java.util.List<com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashRepeaterHolder> items,
long seq) |
|
long |
getRepeaterLastSeqence() |
Get the sequence number of the last added repeater item
|
int |
getRepeaterSegmentCount() |
|
int |
getSegmentCount() |
|
int |
getSegmentCountAudio() |
|
int |
getSegmentCountVideo() |
|
int |
getSegmentDurationTarget() |
Returns the duration in milliseconds of the segment else throws an UnsupportedOperationException
|
static int |
getSegmentDurationTarget(IApplicationInstance appInstance,
String packetizer) |
|
IHTTPStreamerMPEGDashLiveStreamPacketizerChunkIdHandler |
getSegmentIdHandler() |
|
java.util.Date |
getStreamStartDate() |
|
com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment |
getVideoInit(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat) |
|
String |
getVideoMimeType(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat) |
|
com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment |
getVideoSegment(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat,
long index) |
|
com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment |
getVideoSegmentByTime(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat,
long time) |
|
String |
getVideoSegmentFileExtString(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat) |
|
String |
getVideoSegmentFormatString(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat) |
|
long |
getVideoSegmentIdFirst() |
|
long |
getVideoSegmentIdLast() |
|
void |
indexStream(com.wowza.wms.httpstreamer.mpegdashstreaming.file.HTTPStreamerMPEGDashLiveIndexItem indexItem) |
|
void |
init(String streamName,
String packetizerName,
IApplicationInstance appInstance,
com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerItem liveStreamPacketizerItem) |
Initialize live stream packetizer
|
void |
internalHandlePacket(IMediaStream stream,
AMFPacket packet) |
|
void |
internalResetStream(IMediaStream stream) |
|
void |
internalStartStream(IMediaStream stream) |
|
boolean |
isHbbtvLiveProfileEnabled() |
|
boolean |
isPlaylistReady() |
|
boolean |
isRandomizeMediaName() |
|
protected void |
logEdgeConfigWarning(String method,
com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging) |
|
protected void |
parseProps(IApplicationInstance appInstance) |
|
void |
repeaterItemsMPEGDashflushed() |
|
void |
resetStream() |
|
void |
setAudioCodec(int codecId) |
|
void |
setCodecInfoAudio(com.wowza.wms.media.model.MediaCodecInfoAudio codecInfoAudio) |
|
void |
setCodecInfoVideo(com.wowza.wms.media.model.MediaCodecInfoVideo codecInfoVideo) |
|
protected void |
setEncryptionRepeaterBytes(CencInfo encInfo) |
|
void |
setMaxSegmentCount(int maxSegmentCount) |
|
void |
setPlaylistSegmentCount(int playlistSegmentCount) |
|
void |
setRandomizeMediaName(boolean randomizeMediaName) |
|
void |
setRepeaterSegmentCount(int repeaterSegmentCount) |
|
void |
setSegmentIdHandler(IHTTPStreamerMPEGDashLiveStreamPacketizerChunkIdHandler segmentIdHandler) |
|
void |
setVideoCodec(int codecId) |
|
void |
startChunk(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
long timecode,
long timecodeUser,
long segmentChunkNum) |
|
void |
startSegment(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
long segmentId,
long segmentIdUser,
int videoCodecId,
int audioCodecId,
long timecode,
long timecodeUser,
String originRepeaterContext,
CencInfo encInfo) |
|
protected void |
trimRepeaterItems(long segmentIndex) |
|
CencInfo |
updateCencInfo(long segmentId,
com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging) |
getSessionFormataddPacketizerEvent, checkTimeout, getAndSetStartStream, getApplicationInstance, getCaptionProvider, getContextStr, getLiveStreamPacketizerId, getMaxEventCount, getProperties, getRepeaterItems, getRepeaterItemsSanJose, getStreamStartupTimeout, getStreamTimeout, handlePacket, initLiveCaptionIngestor, isActive, isCEA608IngestModuleInstalled, isPacketizeAudio, isPacketizeData, isPacketizeVideo, isRepeaterEdge, onIdle, resetStream, run, setLiveStreamPacketizerId, setMaxEventCount, setPacketizeAudio, setPacketizeData, setPacketizeVideo, setRepeaterEdge, setStreamStartupTimeout, setStreamTimeout, shutdown, startStream, touchprotected String additionalLiveProfiles
protected WMSProperties appProps
protected int audioCodecId
public static final int AUDIOGROUPCOUNT
protected Class clazz
protected String clazzName
protected boolean enableHbbtvLiveProfile
protected CencInfo encInfo
protected boolean forceDisplaySizeToBeEven
protected int lastBogusSequence
protected String liveRepeaterEncryptionSharedSecret
protected Object lock
protected boolean logRepeaterItems
protected int maxPackagingWarning
protected int maxSegmentCount
public static final int MAXSEGMENTLOGCOUNT
protected long minimumUpdatePeriod
protected String originRepeaterContext
protected boolean packagingWarning
protected int packagingWarningCtr
public static final String PACKETIZER_NAME
protected int playlistSegmentCount
public static final int PLAYSTARTTOLERANCE
protected boolean randomizeMediaName
protected String randomSessionStr
protected java.util.List<com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashRepeaterHolder> repeaterItems
protected int repeaterSegmentCount
protected long repeaterSeq
protected int segmentDurationTarget
public static final int SEGMENTDURATIONTOLERANCE
protected IHTTPStreamerMPEGDashLiveStreamPacketizerChunkIdHandler segmentIdHandler
protected com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashWriterHandler segmentWriterHandler
protected com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashWriterHandler segmentWriterHandlerToBeKilled
protected IMediaStream stream
protected int videoCodecId
public static final int WAITFORCODECTIME
public LiveStreamPacketizerMPEGDash()
throws com.wowza.wms.server.LicensingException
com.wowza.wms.server.LicensingExceptionpublic void addPacket(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
com.wowza.wms.httpstreamer.model.LiveStreamPacketizerPacketHolder holder)
public void addRepeaterItem(com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashRepeaterHolder item)
protected void createWriterHandler()
protected void doResetStream(IMediaStream stream)
public void endChunk(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
long endTimecode,
long segmentChunkCount)
public void endSegment(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
long endTimecodeVideo,
long timecodeAudio)
public String getAdditionalLiveProfiles()
public com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment getAudioInit(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat)
public String getAudioMimeType(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat)
public com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment getAudioSegment(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat,
long index)
public com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment getAudioSegmentByTime(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat,
long time)
public String getAudioSegmentFileExtString(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat)
public String getAudioSegmentFormatString(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat)
public long getAudioSegmentIdFirst()
public long getAudioSegmentIdLast()
public long getBitrate()
public long getBitrateAudio()
public long getBitrateVideo()
public long getCalculatedAudioBitrateAverage()
public long getCalculatedAudioBitratePeak()
public long getCalculatedVideoBitrateAverage()
public long getCalculatedVideoBitratePeak()
public int getChunkDurationTarget()
getChunkDurationTarget in interface ILiveStreamPacketizergetChunkDurationTarget in class com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerBasepublic com.wowza.wms.media.model.MediaCodecInfoAudio getCodecInfoAudio()
public com.wowza.wms.media.model.MediaCodecInfoVideo getCodecInfoVideo()
public com.wowza.wms.httpstreamer.model.SegmentFormat getDefaultSegmentFormat()
public int getDefaultSegmentSetIndex()
public CencInfo getEncInfo()
public double getFrameRate()
public Object getLock()
public int getMaxSegmentCount()
public long getMinimumUpdatePeriod()
public int getPlaylistSegmentCount()
public String getRandomSessionStr()
public void getRepeaterItemsMPEGDash(java.util.List<com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashRepeaterHolder> items,
long seq)
public long getRepeaterLastSeqence()
ILiveStreamPacketizergetRepeaterLastSeqence in interface ILiveStreamPacketizergetRepeaterLastSeqence in class com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerBasepublic int getRepeaterSegmentCount()
public int getSegmentCount()
public int getSegmentCountAudio()
public int getSegmentCountVideo()
public int getSegmentDurationTarget()
ILiveStreamPacketizergetSegmentDurationTarget in interface ILiveStreamPacketizergetSegmentDurationTarget in class com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerBasepublic static int getSegmentDurationTarget(IApplicationInstance appInstance, String packetizer)
public IHTTPStreamerMPEGDashLiveStreamPacketizerChunkIdHandler getSegmentIdHandler()
public java.util.Date getStreamStartDate()
public com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment getVideoInit(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat)
public String getVideoMimeType(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat)
public com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment getVideoSegment(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat,
long index)
public com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.CmafSegment getVideoSegmentByTime(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat,
long time)
public String getVideoSegmentFileExtString(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat)
public String getVideoSegmentFormatString(com.wowza.wms.httpstreamer.model.SegmentFormat segmentFormat)
public long getVideoSegmentIdFirst()
public long getVideoSegmentIdLast()
public void indexStream(com.wowza.wms.httpstreamer.mpegdashstreaming.file.HTTPStreamerMPEGDashLiveIndexItem indexItem)
public void init(String streamName,
String packetizerName,
IApplicationInstance appInstance,
com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerItem liveStreamPacketizerItem)
ILiveStreamPacketizerinit in interface ILiveStreamPacketizerinit in class com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerBasestreamName - stream namepacketizerName - packetizer nameappInstance - application instanceliveStreamPacketizerItem - live stream packetizerpublic void internalHandlePacket(IMediaStream stream, AMFPacket packet)
internalHandlePacket in class com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerBasepublic void internalResetStream(IMediaStream stream)
internalResetStream in class com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerBasepublic void internalStartStream(IMediaStream stream)
internalStartStream in class com.wowza.wms.stream.livepacketizer.LiveStreamPacketizerBasepublic boolean isHbbtvLiveProfileEnabled()
public boolean isPlaylistReady()
public boolean isRandomizeMediaName()
protected void logEdgeConfigWarning(String method,
com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging)
protected void parseProps(IApplicationInstance appInstance)
public void repeaterItemsMPEGDashflushed()
public void resetStream()
public void setAudioCodec(int codecId)
public void setCodecInfoAudio(com.wowza.wms.media.model.MediaCodecInfoAudio codecInfoAudio)
public void setCodecInfoVideo(com.wowza.wms.media.model.MediaCodecInfoVideo codecInfoVideo)
protected void setEncryptionRepeaterBytes(CencInfo encInfo)
public void setMaxSegmentCount(int maxSegmentCount)
public void setPlaylistSegmentCount(int playlistSegmentCount)
public void setRandomizeMediaName(boolean randomizeMediaName)
public void setRepeaterSegmentCount(int repeaterSegmentCount)
public void setSegmentIdHandler(IHTTPStreamerMPEGDashLiveStreamPacketizerChunkIdHandler segmentIdHandler)
public void setVideoCodec(int codecId)
public void startChunk(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
long timecode,
long timecodeUser,
long segmentChunkNum)
public void startSegment(com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging,
long segmentId,
long segmentIdUser,
int videoCodecId,
int audioCodecId,
long timecode,
long timecodeUser,
String originRepeaterContext,
CencInfo encInfo)
protected void trimRepeaterItems(long segmentIndex)
public CencInfo updateCencInfo(long segmentId, com.wowza.wms.httpstreamer.model.ContentPackaging contentPackaging)