LongTail Video is now JW Player - New Name, Same Passion For Video


Open Video Ads Forums



Problem with pre-roll

12 replies [Last post]

Hi all
We test OVA for Flowplayer with our partner.
This partner automatically give us video advert as url

If our partner have the video advert - he give us this video we show it as pre-roll
If our partner doesn't have advert - he give us empty file "null.flv" and we try to show it
But Flowplayer can't play this file and stop all Flowplayer work without error message


Any chance that I could see a test page? It should be ok... but I'd like to see it running to identify what's happening...


Now we turn off OVA because users can't view our video content

Well, without a test URL to see, it's impossible for me to tell what's misconfigured. If you could create a test page with your setup, I can diagnose what is going on.

Let me know if you can do that...



Also, as a suggestion, if you'd like to post or email the ad tag to me (via enquiries@openvideoads.org) I'll happily create a sample setup for you that ensures the ad tag works...


In this test page ^^ you can see our problem

Ok, thanks. That helps.

I see the problem(s). There are several things wrong with the setup - first few of the problems are directly stopping OVA processing the ad:

1. Issue 1: Bad VAST response

The VAST response for the null ad clip has the following as the MediaFile specified:

     <MediaFile delivery="progressive" type="" height="300" width="400" bitrate="512">

When OVA parses that, it reports the following:

19:42:22 GMT+1100 VideoAdServingTemplate: 1 Linear media files detected
19:42:22 GMT+1100 VideoAdServingTemplate: Excluding 'http://cdn.vidigital.ru/media/misc/null.flv' as mime type '' is to be filtered out
19:42:22 GMT+1100 VideoAdServingTemplate: 0 mediaFiles added

That's one of the reasons why the null clip isn't playing - OVA is filtering it out because a mime "type" isn't specified. In the VAST 2 specification, the "type" is a "required" field - it has to be specified. In the VAST response provided by your ad provider, while they have added the attribute, they haven't provided a value.

As such, OVA does not know if the media type is acceptable for playback or not, and as such, excludes it.

Your ad provider should specify:


as the mime "type" for the media file.

That will fix this first problem.

2. Issue 2: Bad Duration

The second issue with the null clip response is that the duration is specified as "00:00:00" - it just doesn't make sense to have a clip with a 0 duration.

Saying that, if Flowplayer tries to play a clip with a 0 duration then it will just assume the duration from the metadata and play it full length using that metadata, so a 0 duration may be ok.

3. Issue 3: That FLV NULL clip won't play in Flowplayer

Ok, issues 1 and 2 aside, the real issue is that the "null.flv" clip just won't play in Flowplayer. I setup an instance of flowplayer without OVA and tried to play that null clip as a playlist item. It doesn't play.

See this example - no OVA, just the null clip and a sample show clip in a flowplayer playlist:


So if Flowplayer cannot play the clip, then OVA cannot play the clip.

The ad provider needs to provide a valid "null.flv" clip that will actually play in Flowplayer if you really want to go with this approach.

4. Issue 4: OVA Version

It's not the source of the problem, but the OVA version you are running is quite old. I think you are best to use the latest Release Candidate (RC6 or RC7) from the OVA Developer site. Go to http://developer.longtailvideo.com/ova, register on the site and then download the latest RC from the "Download the Latest" page

5. Issue 5: Flowplayer version

While you are at it, I'd also upgrade the Flowplayer version that you are running to 3.2.7 - not essential, but probably a good idea

Anyway, the key issues are items 1 through to 3. Just summarising:

1. The VAST response needs to have the mime type specified
2. The null clip needs to be playable by Flowplayer
3. It is preferable to have a duration (say 1 second) in the VAST response for the null clip, but 0 will likely work

Overall though, I feel that this "null" clip is a flawed approach.

A better approach is to let OVA fire the impressions if the VAST response is blank. RC7 has an option in it that allows an empty VAST response to have the impressions fired.

This means you don't need that null clip, but it would mean that your ad provider should stop sending a null clip and just send a VAST response with the impression in it and no media files - e.g. like this VAST response:


While that's a VAST 1 example, you can also do a VAST 2 equivalent.

Hope this helps,


Thx Paul
We will try

Hi Paul, regarding this subject, how can we detect an empty VAST2 reply? (Using javascript i assume?).

We want to be able to work with a few ad providers simultaneously.
If one provider sends us an empty VAST2 reply, we want to immediately try to get an ad to display from another provider.

Our goal is to detect empty calls from "ad provider 1" then make another ad call from the player to "ad provider 2" and so on ...

What is the best way to achieve this? It would be great if you could supply an example.

We are using the licensed version of JW Player 5.10, with MP4 (H.264) video files.



A good approach for this is to use the OVA failover configuration.. if the ad response is empty (no ads), then OVA will failover to another ad call.

Here's some doc on this:



Paul thanks for the reply.
Will the solution you mentioned work with empty VAST2 replies? (Does the failover come into action for empty replies?)

Yes, should do...

Still don't have the new JW Player? Get It Here