Wowza Community

Adaptive Bitrate, nDVR, SMIL and OSMF Strobe

I am trying to get Adaptive Bitrate nDVR streaming with OSMF Strobe Media Playback.

I got it working for live streams, but when I add “?DVR” to the SMIL URL, it doesn’t work properly.

http://[wowza]:1935/live/smil:stream.smil/manifest.f4m?DVR

The stream shows in OSMF Strobe Media Playback, but after some seconds it hangs… for example it works for 30-50sec. and then the stream stops, and time doesn’t built up anymore.

I can see the nDVR is working, as in the /dvr folder all streams are built every 4 seconds.

I tried with keyframe on every 4 seconds and every 2 seconds… when playing in Strobe it still doesn’t work properly.

Has anyone had success with live streaming, SMIL, nDVR and Strobe?

Thanks,

Anton

Have you tested with a Wowza example dvr player?

What is the source of these streams? Are you using Wowza Transcoder? Otherwise, have you validated that they are key frame aligned?:

https://www.wowza.com/docs/how-to-debug-encoder-multi-bitrate-keyframe-alignment

Richard

Anton,

Right, Wirecast does not produce key frame aligned streams.

Richard

Yes, I have tested with StrobeMediaPlayback 2 (from www.osmf.org/dev/) and with Wowza Dvr Player (again Strobe, but taken from Wowza 3.1.2 -> Examples -> LiveDvr)

The problem is not with Wowza, but with Wirecast.

I have tested with both Wirecast and Adobe FMLE. Wirecast works only when publishing 1 stream, and using the Transcoder. If I publish 2 streams from Wirecast, apparently they are not aligned, as you suggested.

Here is my log for Wirecast, 2 streams:

2012-06-28 10:26:43 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_350]: dts:0 pts:0 - - - 18.773 - - - - - - - - -

2012-06-28 10:26:44 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:833 pts:833 - - - 19.569 - - - - - - - - -

2012-06-28 10:26:45 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_350]: dts:2000 pts:2000 - - - 20.909 - - - - - - - - -

2012-06-28 10:26:46 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:2833 pts:2833 - - - 21.56 - - - - - - - - -

2012-06-28 10:26:47 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_350]: dts:4000 pts:4000 - - - 22.876 - - - - - - - - -

2012-06-28 10:26:48 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:4833 pts:4833 - - - 23.483 - - - - - - - - -

2012-06-28 10:26:48 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:4866 pts:4866 - - - 23.63 - - - - - - - - -

2012-06-28 10:26:49 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_350]: dts:6000 pts:6000 - - - 24.961 - - - - - - - - -

2012-06-28 10:26:50 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:6866 pts:6866 - - - 25.515 - - - - - - - - -

2012-06-28 10:26:51 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_350]: dts:8000 pts:8000 - - - 26.817 - - - - - - - - -

2012-06-28 10:26:52 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:8866 pts:8866 - - - 27.517 - - - - - - - - -

2012-06-28 10:26:53 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_350]: dts:10000 pts:10000 - - - 28.806 - - - - - - - -

2012-06-28 10:26:54 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:10866 pts:10866 - - - 29.504 - - - - - - - -

2012-06-28 10:26:55 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_350]: dts:12000 pts:12000 - - - 30.809 - - - - - - - -

2012-06-28 10:26:56 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:12866 pts:12866 - - - 31.537 - - - - - - - -

2012-06-28 10:26:57 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_350]: dts:14000 pts:14000 - - - 32.835 - - - - - - - -

2012-06-28 10:26:58 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:14866 pts:14866 - - - 33.572 - - - - - - - -

2012-06-28 10:26:59 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_350]: dts:16000 pts:16000 - - - 34.825 - - - - - - - -

2012-06-28 10:27:00 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:16866 pts:16866 - - - 35.543 - - - - - - - -

2012-06-28 10:27:00 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/myStream2_100]: dts:16900 pts:16900 - - - 35.631 - - - - - - - -

Here is my log for Adobe FMLE, 2 streams: This is working fine:

2012-06-28 10:29:49 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_1]: dts:4885422 pts:4886242 - - - 205.373 - - - - - - - - -

2012-06-28 10:29:49 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_2]: dts:4885422 pts:4886242 - - - 205.44 - - - - - - - - -

2012-06-28 10:29:54 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_2]: dts:4890316 pts:4890356 - - - 209.532 - - - - - - - - -

2012-06-28 10:29:54 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_1]: dts:4890316 pts:4890356 - - - 209.585 - - - - - - - - -

2012-06-28 10:29:58 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_1]: dts:4894430 pts:4894470 - - - 213.691 - - - - - - - - -

2012-06-28 10:29:58 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_2]: dts:4894430 pts:4894470 - - - 213.698 - - - - - - - - -

2012-06-28 10:30:02 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_2]: dts:4898583 pts:4898623 - - - 217.767 - - - - - - - - -

2012-06-28 10:30:02 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_1]: dts:4898583 pts:4898623 - - - 217.86 - - - - - - - - -

2012-06-28 10:30:06 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_2]: dts:4902736 pts:4902776 - - - 221.989 - - - - - - - - -

2012-06-28 10:30:06 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_1]: dts:4902736 pts:4902776 - - - 222.055 - - - - - - - - -

2012-06-28 10:30:10 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_2]: dts:4906890 pts:4906930 - - - 226.139 - - - - - - - - -

2012-06-28 10:30:10 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_1]: dts:4906890 pts:4906930 - - - 226.231 - - - - - - - - -

2012-06-28 10:30:14 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_1]: dts:4911004 pts:4911044 - - - 230.296 - - - - - - - - -

2012-06-28 10:30:14 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe2_2]: dts:4911004 pts:4911044 - - - 230.31 - - - - - - - - -

I started Adobe a few times, and one of the times, the values were not aligned but it seemed to work fine anyways:

2012-06-28 09:40:24 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1920373 pts:1921192 - - - 690.207 - - - - - - - - -

2012-06-28 09:40:25 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1920374 pts:1921193 - - - 690.261 - - - - - - - - -

2012-06-28 09:40:29 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1925306 pts:1925346 - - - 694.575 - - - - - - - - -

2012-06-28 09:40:29 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1925305 pts:1925345 - - - 694.696 - - - - - - - - -

2012-06-28 09:40:33 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1929420 pts:1929460 - - - 698.625 - - - - - - - - -

2012-06-28 09:40:33 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1929419 pts:1929459 - - - 698.706 - - - - - - - - -

2012-06-28 09:40:37 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1933574 pts:1933614 - - - 702.724 - - - - - - - - -

2012-06-28 09:40:37 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1933573 pts:1933613 - - - 702.79 - - - - - - - - -

2012-06-28 09:40:41 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1937727 pts:1937767 - - - 706.893 - - - - - - - - -

2012-06-28 09:40:41 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1937726 pts:1937766 - - - 706.988 - - - - - - - - -

2012-06-28 09:40:45 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1941841 pts:1941880 - - - 710.952 - - - - - - - - -

2012-06-28 09:40:45 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1941840 pts:1941879 - - - 711.059 - - - - - - - - -

2012-06-28 09:40:50 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1945994 pts:1946034 - - - 715.939 - - - - - - - - -

2012-06-28 09:40:50 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1945993 pts:1946033 - - - 715.939 - - - - - - - - -

2012-06-28 09:40:54 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1950107 pts:1950147 - - - 719.322 - - - - - - - - -

2012-06-28 09:40:54 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1950106 pts:1950146 - - - 719.427 - - - - - - - - -

2012-06-28 09:40:58 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1954261 pts:1954301 - - - 723.488 - - - - - - - - -

2012-06-28 09:40:58 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1954260 pts:1954300 - - - 723.633 - - - - - - - - -

2012-06-28 09:41:02 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1958415 pts:1958455 - - - 727.777 - - - - - - - - -

2012-06-28 09:41:02 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1958414 pts:1958454 - - - 727.837 - - - - - - - - -

2012-06-28 09:41:06 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_2]: dts:1962528 pts:1962568 - - - 731.787 - - - - - - - - -

2012-06-28 09:41:06 UTC comment server INFO 200 - LiveReceiver.keyframe[live/definst/adobe_1]: dts:1962527 pts:1962567 - - - 731.908 - - - - - - - - -

I tried setting chunkBreakOnPTS to false, but it still didn’t work for Wirecast. I will point them to this post if they can suggest any workaround.

Thank you for the co-operation.

Best regards,

Anton