Smooth Streaming with ismv files

Hi,

We use Microsoft Expression Encoder 4 Pro to encrypt content with PlayReady DRM.

And we put ismv files on the wowza server to play.

Sometimes player cannot play because it cannot download the manifest file.

Then we found the response time is too long to download manifest file.

It may take 7~8 minutes to get manifest file, but player has already been timeout.

When player works properly, it only takes 2~6 seconds to get manifest file.

Is there any way to improve it?

Thanks,

Roy

Can you provide media and steps to reproduce the problem?

Roy,

It sounds like the ismv files you are encoding are fragmented. You are probably using Expression 4 Encoder and taking the “Silverlight Project” path. Select “Transcoding Project” instead to encode to unfragmented mp4 container. Take a look at the Expression 4 presets in this article as a staring place:

https://www.wowza.com/docs/how-to-encode-video-on-demand-content

The resultant files will play in Silverlight for smooth streaming, and you won’t see that CPU spike.

Richard

DRM is in the Security Tab, under Job Output in the panel. It is enabled with Output Format set to “MP4”

Richard

Right, hmm. I will ask around about it, see what I can find out, but evidently ismv files are required to do what DRM has to do. I will check.

Richard

We talked about this. I don’t have an alternative to using ismv files, but they are fragmented which adds significant overhead to Wowza, and encryption increase overhead further. So you have to take this into account, you need a lot late model quad or dual quad cpu and lot of ram, and of course well tuned.

You might get some benefit from defragmenting the files with mp4box, however we don’t know if encryption will work after de-fragmenting.

Richard

Roy,

Try using MediaCache instead of streaming directly from NFS

https://www.wowza.com/docs/how-to-scale-video-on-demand-streaming-with-media-cache

Richard

Roy,

This will help by reloading the cache after re-start

https://www.wowza.com/docs/how-to-configure-mediacache-to-reload-the-cache-from-disk-on-server-restart

Have you looked at the comments in the /conf/MediaCache.xml file. There are several options for tuning.

Is it a Windows edge server? Re the Observations section at the bottom of the MediaCache Guide, Linux servers are better for MediaCache. But try those tuning options.

Richard

Roy,

Yes, probably. You can test by comparing sample.mp4

Richard

Martin,

Is it “encrypted” ISMV files, or fragmented ISMV files? If fragmented, it is best to encode to standard .mp4 files using Expression 4 Encoder. Take a look at the presets in this article:

https://www.wowza.com/docs/how-to-encode-video-on-demand-content

Richard

What problem did you have with problem PlayReady DRM and simple MP4 output? When I switch from Output format “IIS Smooth Streaming” to “MP4” the Security options remain enabled. I do not have a PlayReady license to test further.

If you can get that to work, or if you can find a way to flatten the encrypted, fragmented file what would improve performance. In our tests with the tools we know of to these flatten fragmented, it doesn’t work with encrypted files. We are going to ask around for other options; i we find other tools I will update this thread.

Richard

After further testing and inquiries, we don’t have a solution for this. As you found, fragmented ISMV is the only way to pre-encrypt with Playready using E4E and we don’t know of any post-processing tools for flattening such files.

Richard

re ticket 50111

Hello,

I would like to ask, if you have a update/solution for encrypted ISMV file streamed thru wowza.

I have same problem. Getting manifest takes very long

I have Wowza Media Server 3 Monthly Edition 3.1.2 build1624, based on Linux.

Only thing I need is to stream it to Silverlight player.

Thank you

Martin

Hello,

It is encrypted and fragmented ISMV file. We have problem to put PlayReady DRM on simple MP4 file.

We have many MP4 files without protection, they run well.

But our customer wants DRM protected files. Due to internal security standard, he wants to have encrypted content on the streaming storage. He doesnt want encryption on the fly.

Do you support (or have you tested, or your clients) fragmented ISMV files streamed thru wowza?

Thank you Martin

Hi,

We did more test and found some new information.

  1. Put the ismv file in local storage

It almost takes 2~8 seconds to download manifest (depends on file size).

When client starts to download manifest, the CPU usage of wowza process will rise to 100%. (by Linux top command)

  1. Put the ismv file in remote storage (NFS)

It sometimes takes 5~8 minutes to download manifest.

When client starts to download manifest, the CPU usage does not rise immediately.

After 5~8 minutes, CPU usage start to rise.

Then wait more 2~8 seconds, client will receive manifest.

It seems like wowza server needs to scan the ismv file before it generates manifest.

And this action will cause more CPU usage and respone time.

But wowza server does not scan file immediately when we put the file in NFS.

This is a problem we cannot figure out.

The media files as follow

test1.ismv (2.8G)

test2.ismv (212MB)

The manifest response time is

test1.ismv => local : 8 sec remote: 431 sec

test2.ismv => local : 2 sec remote: 48 sec

I am sorry the files are too large, but the small files hardly reproduce problem.

These files cannot play since DRM protection, but you can try to get manifest.

Thanks,

Roy

Hi, Richard

We use wowza sample presets to encode, and the output files are MP4.

But it cannot select DRM options to encode, the error message is

"DRM is not supported for the current encode settings. It is only supported for IIS Smooth Streaming."

It seems like Expression Encoder cannot output MP4 file with DRM protection, it only supports ismv output files.

Is there any other suggestion for us?

Can you provide other sample presets to encode MP4 file with playready DRM?

Thanks,

Roy

Hi, Richard

Yes, the DRM options can be enabled with output format set to MP4.

But when you press encode button, it pops up error message as I mentioned.

Screen capture of expression setting

setting1

setting2

fail encode preset

Thanks,

Roy

Hi, Richard

OK.

Now I see the ismv files will increase wowza overhead.

The another problem is why the response time is too long when ismv file put in NFS. (the problem in #3)

If we put ismv file in local, it only causes long loading time when play video.

But if we put in NFS, the player cannot play video since response time is too long.

It seems like wowza will be slow start to scan ismv files in NFS.

Is this also a ismv files problem or something else wrong?

Thanks,

Roy

Hi, Richard

Sorry for late response.

I have tried to use MediaCache.

The manifest response of first time request is too long to make player timeout.

I found some discussion as follow link

mediacache_list_item

It says

  1. MediaCache does not download the entire file on first play. It will only download the parts that are needed (plus a little more) as the file is being streamed. We do pre-allocate disk space for the entire file but we fill is sparsely as needed.

Is this also suit for encrypted ismv file?

If the first time request will cause player timeout, the mediacache still cannot resolve our problem.

Thanks,

Roy