Visionary AVN441, WSE 4.2.0 and MPEG-DASH

Hello all, thanks in advance for any suggestions that you can provide.

I’m a Wowza n00b and somewhat knowledgeable (read: dangerous but far from an expert) with respect to both traditional streaming protocols and adaptive streaming. At the moment I’m working with a Visionary Software, Inc. (VSI) AVN441 as my encoder and I used the “How to publish and play a live stream (MPEG-TS based encoder)” article to configure the live source in Wowza Streaming Engine (WSE) 4.2.0. Unfortunately the old post regarding the AVN420 doesn’t seem relevant, as far as I can tell.

Here’s a quick breakdown of my configuration:

Source

HDMI from laptop @ 1280x720/60Hz

VLC Player running a full-screen H.264/AAC video on loop

VSI Web UI Input page

Status indicates that it’s receiving 720p@60

(VSI Web UI Status page displays “Format=720p@59.94/60Hz (ok)”)

VSI Web UI Encoding page

Tried total bitrates ranging from 7000-20000

Tried MPG and AAC audio formats

All other settings left at default

VSI Web UI Stream page

“Transport Stream UDP” (also tried “Transport Stream RTP”, the only other option, with similar results)

Stream destination set to <wowza_server_ip>:10000

All other settings left at default

When I enable the stream in the VSI web UI, the WSE monitoring page shows a steady stream of data coming in. The test players in the WSE web UI work for Adobe RTMP and Adobe HDS while the others do not (for various reasons). I’ve tried some client tests on other systems and while doing so I confirmed that Apple HLS and RTSP also work as expected. However, the Smooth Silverlight test players I’ve tried give me a 3001 error and the MPEG-DASH client from the DASH Industry Forum website shows constant image corruption and stuttering/skipping; at best I might get the occasional segment that plays normally before it starts corrupting, skipping and stuttering again. We’re talking nauseating/seizure-inducing playback, not just poor quality.

In order to eliminate the VSI hardware from the equation, I’ve also tried VLC on a different server to send MPEG-TS UDP to WSE (for consistency I used the same MP4 video file I had running on the laptop source mentioned above). I followed the instructions in the “How to use VLC as a live stream encoder with Wowza Streaming Engine (MPEG-TS)” article for this test. Just as with the VSI test, the other streaming technologies work as expected. However, when I try the DASH reference client, although I don’t anywhere near the amount of image corruption as before, I am only getting a few segments of the video stuck in a continuous loop with an occasional freeze/resume. Granted, parameters such as the incoming bitrates vary substantially between the two configurations (I didn’t experiment with the VLC transcoding settings at all) so the VLC stream isn’t exactly a great substitution for the VSI hardware.

Of course, the whole reason I’ve set up this test environment is for some developers to test their DASH client implementations so the only streaming format I absolutely require at the moment is MPEG-DASH. Considering that several other formats play as expected, it certainly seems that WSE + DASH is the issue but it could easily be caused by my lack of experience/knowledge. Am I running into some sort of DASH-specific issue that all the pros already know about, or is there something unique about my configuration that could be causing these issues? Again, thanks for any help you can send my way.

Hello,

MPEG-Dash is still an evolving technology. Have you tried using a different player? Some users have reported good results using the Shaka Player and MPEG-Dash. One thing you could try is to play the sample.mp4 VOD file included with Wowza Streaming Engine, to see if your source encoding could be the issue.

Best regards,

Andrew

Nothing? Is that because I’m doing something horribly wrong? This article seems to suggest that my configuration is the issue (“MPEG-2 TS (Not supported in Wowza Streaming Engine)”) but the how-to instructions don’t address how to set up a live stream using the supported container format (“ISO base media file format (IBMFF)”).

I’ve got a lot to learn here… Does Wowza’s support team offer help via this forum? Can anyone from the Wowza community please tell me if I’m doing something stupid? Thanks again.

Hi,

The Javascript library and files for Shaka player are available here.

Daren

Sorry for the delay, just getting back into the office.

One thing you could try is to play the sample.mp4 VOD file included with Wowza Streaming Engine, to see if your source encoding could be the issue.

The sample VOD file works as expected. Based on the article linked above that indicates MPEG-2 TS is not supported, I’m fairly certain that the source encoding is the issue. However, I’m at a loss as to how to provide a source encoding that is supported in Wowza for a live MPEG-DASH stream. What is the #1 known-good, go-to solution to provide a working source for use with Wowza and MPEG-DASH? I’m not married to any one brand of hardware, I just happen to have a few devices that have been loaned to us for testing but I’ll seek out whatever I need.

Thanks again for your help.

I have now picked up a Hauppauge StreamEez-Pro and I’m seeing something very similar to what I was getting when using VLC as the source. There is no image corruption and I’m getting functional audio. RTSP works normally but whenever I try to use MPEG-DASH, I’m getting the same ~20 seconds of video stuck on loop, as opposed to the entire video. We’ve tried Chrome and IE on different systems using the DASHIF 1.4.0 player and the results are the same.

Andrew, does the Shaka Player you linked above require the stream to be Internet-accessible? I can’t seem to get it working but I’m not certain I’m configuring it properly.