Wowza Community

DVR recorder is shutdown but is unable to re initialize properly

I’ve noticed that when the stream timeout has triggered, I think it’s shutting down the dvr recorder for the stream. For example, I see this message for stream Ben01; LiveStreamDvrRecorderBase.shutdown[ben/lab-7/Ben01]. I say “I think it’s shutting down the dvr recorder” because I notice that this causes the DVR recorder to be unable to write chunks if stream Ben01 reconnects and call startRecording on the dvr recorder. I tried reinitializing the dvr recorder like so


// Create dvr recorder item
DvrRecorderItem item = new DvrRecorderItem(IDvrConstants.DVR_DEFAULT_RECORDER_ID, "com.wowza.wms.dvr.impl.LiveStreamDvrRecorder");

// Call init on the dvr recorder
dvrRecorder.init(stream.getName(), dvrStream.getRecorder().getRecordingName(), stream.getStreams().getAppInstance(), item);

This will create a dvr store but it still won’t write dvr chunks to it. Am I misunderstanding how to reinitialize the dvr recorder for a stream?

Sorry you never got any responses on this. Let me see what I can find for you and I’ll ask some of the engineers if they have some ideas on how to do that so it still writes the dvr chunks on reconnect.

I did come across this setting in the DVR documentation: streamTimeout.

Specifies the amount of time, in milliseconds (ms), that nDVR will wait for packets until it stops recording. This timeout is meant to account for when encoders disconnect and then restart. The default value is 300,000 ms (5 minutes). The value should be a non-zero value or else your recording will stop whenever there is no data.

For MPEG-DASH nDVR playback, we recommend that you use a much lower value, such as 30000 (20 seconds). Otherwise, there might be a relatively long window of time during which new clients try to start playback and then quickly stall because chunks aren’t actually available. You might need to experiment to find the right value.

<Properties>
<Property>
    <Name>streamTimeout</Name>
    <Value>300000</Value>
    <Type>Integer</Type>
</Property>

Here is the reference doc. I hope this helps you. (scroll to bottom of doc)
https://www.wowza.com/docs/how-to-do-advanced-configuration-for-wowza-ndvr