Wowza Community

NullPointerException when playing MPEG-DASH stream coming from WebRTC

When we try to transcode a stream coming from WebRTC in order to publish it using mpegdashstreamingpacketizer or cmafstreamingpacketizer eventually (the time is completely random) we start seeing the following exception:

HTTPStreamerMPEGDashLiveIndex.indexFile[live/_definst_/streamName_720p] : java.lang.NullPointerException
at com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.MPEGDashWriterHandler.indexStream(
at com.wowza.wms.httpstreamer.mpegdashstreaming.livestreampacketizer.LiveStreamPacketizerMPEGDash.indexStream(
at com.wowza.wms.httpstreamer.cmafstreaming.livestreampacketizer.LiveStreamPacketizerCmaf.indexStream(
at com.wowza.wms.httpstreamer.mpegdashstreaming.file.HTTPStreamerMPEGDashLiveIndexItem.indexStream(
at com.wowza.wms.httpstreamer.mpegdashstreaming.file.HTTPStreamerMPEGDashLiveIndex.indexFile(
at com.wowza.wms.httpstreamer.mpegdashstreaming.httpstreamer.HTTPStreamerSessionMPEGDash.createIndexLive(
at com.wowza.wms.httpstreamer.mpegdashstreaming.httpstreamer.HTTPStreamerSessionMPEGDash.getIndexLive(
at com.wowza.wms.httpstreamer.mpegdashstreaming.httpstreamer.HTTPStreamerAdapterMPEGDashStreamer.onManifest(
at com.wowza.wms.httpstreamer.mpegdashstreaming.httpstreamer.HTTPStreamerAdapterMPEGDashStreamer.serviceMsg(
at com.wowza.wms.httpstreamer.mpegdashstreaming.httpstreamer.HTTPStreamerAdapterMPEGDashStreamer.service(
at com.wowza.wms.server.ServerHandler.a(
at com.wowza.wms.server.ServerHandler.a(
at com.wowza.wms.server.ServerHandler.messageReceived(
at com.wowza.wms.server.ServerHandlerThreaded.messageReceived(

As a result the stream can not be played anymore in MPEG-DASH player. Neither restart of the app nor the server restart solves the problem. The problem just appears and disappears randomly and only when we publish using WebRTC. With a RTMP stream coming from OBS everything works fine.

Our configuration:
WebRTC stream (H.264/Opus) is being transcoded into H.264/AAC (Key Frame Interval: we tried “Same as source”, 15 and 30 frames).

  • WebRTC client based on your example:
  • Wowza Streaming Engine ver.
  • CMAF Streaming Packetizer Settings:
    • cmafSegmentDurationTarget = 1000
    • cmafMaxSegmentCount = 50
    • cmafPlaylistSegmentCount = 12
    • cmafRepeaterSegmentCount = 12

Thank you for all the information you provided. What version of Java are you using and do you have Engine properly pointed to that version?

This was a bug that we had addressed back in 4.8.5 so I see you’re on which is interesting.

If you are using Java 9 through 12 and that’s properly configured in Engine as shown here, please send us a support ticket so we can further investigate this for you. The engineers would like to see it and test it. Thanks…

1 Like