Flickering on NDI and Tricaster

I’m currently developping a titling solution on CasparCG via HTML templates.
I use version 2.3 and the native NDI.
I noted two problems on two differents NewTech Tricaster :

  • On a 410, the animation (a simple fading) jerk on the loading of the HTML, it appears and disappear with 2 or 3 steps.
    I think it’s a problem of performance of NDI decoding on 410 but I’m still investigating.

  • On a TC1, the animation is fluid but there is visible flickering on the preview windows and sligth one on the output.
    The session on the TC1 is PAL1080i50, but whatever the video mode of the CasparCG, the flickering persist.
    When I test on a NTSC session 1080i50 on the TC1, the flicker disappear.

Using NewTek studio Monitor on the same computer as CasparCG, there is no problem, except when the video mode of the channel is interlaced (in this case the same issue occur).

I suppose the TC1 issue come from interlacement but I don’t understand why the NTSC session works fine.
Is there a “NTSC” specific coding in CasparCG ?
I thought the difference between PAL and NTSC on HD diffusion is only the framerate.


Likely the Tricasters are de-interlacing when converting PAL to NTSC. Have you tested with CCG at 1080p50?

I did, I think I tried all video modes :wink:.
Whatever the framerate and interlacing, it works on NTSC and flickers on PAL.

Do you see the flickering on a video monitor or on a PC monitor? The problem is, that PC monitors normally are not switching frame rate, dependent on the video source you watch. Use a broadcast monitor or at least a TV to check the output signal, via SDI or HDMI.

I see the flickering on a broadcast monitor (connected with HDMI).
It’s the preview of the TC1.
When I look on an SDI monitor, the flickering is very light, quasi inexistent.
I think the output is correct for a broadcast use (I’m not a video professionnal) but the flickering on the preview is disturbing.

Hmm, can you, just for a test, swap the two cables? Sending the preview to the SDI broadcast monitor and the program to the HDMI monitor? Just to make check where the flickering is coming from. By the way that HDMI monitor does not show a multi-viewer output, right?

Yes, the monitor show a multi-viewer output.
I don’t think this is the issue.
It can treat many video from cameras and recorder, the only one that flicker is the one I send from CasparCG.
When it overlays another input, only the part from CasparCG flickers.

If it was a problem of wire or monitor, It would occur on other NDI streams, no ?
With the same material configuration, changing only the type of session on the tricaster to NTSC, the issue disappear.

I suspect the Tricaster of misinterpreting the NDI from CasparCG but I can’t see why it could be different from another streamed from a recorder or a camera.

The problem with most multi viewers is, that graphics (with hard edges and fine lines) flicker when they are scaled. You will always see that. If it is an expensive multi viwer, you can change the size of the virtual monitors and that sometimes helps. The cheap ones do not have that and also do not anti alias very good.

I agree with that point but that’s not the issue.
If it was, all the videos displayed in the system would suffer the same issue and it isn’t the case.

The problem is between the coding of CasparCG and the decoding of the Tricaster in PAL mode.
I’m looking for the parameter I can modify in CasparCG to make a “standard” PAL NDI but I’m afraid it doesn’t exist. :unamused:

Trust me, it is the point. I saw that many times in the finest OB vans and studios. I am in TV broadcasting for more than 25 years.

What is that PAL issue? Was it not 1080i50? PAL is an analog TV standard for SD with 720x576 pixels and 50 frames interlaced. It has nothing to do with HD except the framerate.

I trust you that it often happen and understand the issue.

But how do you explain that with an identical material configuration with the same definition 1080i and the only change from PAL to NTSC the problem disappear ?

And ,I didn’t try but I am pretty sure, if I read the AMB file from another source there will be no flickering.

About the PAL issue, I haven’t the faintest idea ! If it was the case i wouldn’t have disturb you. :wink:
I believe the bug is in the tricaster that doesn’t treat correctly a case in which my configuration of CasparCG jump in.
I think I am not alone sending NDI from CasparCG to PAL interlaced session (am I :thinking: ?) and if nobody signaled the issue, it’s my configuration the problem.

When you change the resolution in CCG, did you verify that in the Tricaster or studio monitor they state the new resolution and framerate?

What format does the Tricaster multiview output shows? It might be a 60hz RGB monitor output. Can you change in windows to 50i?
Also, the NDI consumer has an interlacing configuration, did you try enabling/disabling that?

For the tricaster I don’t know the received format (I don’t know where is the information) but for studio monitor, the video mode is the one I changed (I don’t see why there would be a difference between tricaster and studio monitor.)

For the frame rate of the monitor I don’t know but I will check tomorrow (if the system is not in production).

About the interlacing configuration, I tried but it only change automatically from 1080i5000 to 1080p5000 when it is false.
Do you know if others options are availables in the configuration of NDI ?

That is easy: The multi viewer runs at 60fps.

Info taken, the multiviewer adapt to the frequency of the Tricaster. So (but I can’t verify by my own) it should be at 50hz.

I don’t believe it’s a problem of monitor frequency, if it was there would be many other flickering with many sources.
And how about the overlay of casparCG flickering over the image from a recorder that doesn’t flicker ?

I made a new test, with a session PAL (I know it doesn’t exist anymore but the tricaster ignore it doesn’t :wink:) and a definition of 1080p50, and… it works without flickering ! :thinking:

The problem is obviously the interlacing. I’m gonna contact Newtek and try to have an answer from their side.
Thanks for your help.

You can do that, but they will not have a solution also. The problem with interlacing has always been and will always be the horizontal lines. As from the nature of interlacing TV lines will only update with half the framerate. So in 50i every line updates 25 times a second. in 50fps it starts with the uneven lines, and when it’s done it updates the even ones (1, 3, 5… and then 2, 4, 6…) So if your graphics contain lines of only one pixel height or edges that fall on an even line, it will flicker with 25Hz and you can see that. In SD that was a huge problem in HD it is not so obvious. That is why you do not see the flickering in 50p, as the lines are updated progressively (1, 2, 3, 4, 5, 6…) 50 times a second.

You have two solutions now: Go with 50p or change your graphics with interlacing in mind and stay with 50i. Nobody will tell you any other solution.

By the way: Camera pictures also flicker when you shoot a horizontal line raster and the lines fall precisely on the TV lines.

If I could change to 1080p50… but it’s for broadcast.
Maybe I’m wrong about the term flicker (I’m not a video professionnal nor my native language is english).
The flicker is not what can be seen when filming horizontal thin lines.

It’s more a sort of permanent vertical shift up and down of the display.
I made an experience between casparCG and Studio Monitor.
I send an image 1080i50 and display it on studio monitor, the effect is the same as on the tricaster.
I capture several screenshots and put them in photoshop. I reject those which are identicals and it leaves me two different pictures.

The two images are verticaly shifted of 1 or 2 lines (as they are not identical because of the compression it’s complicated to say).
It seems that the decoder of studio monitor make a mistake of one line in the decoding of even and odd pictures.

I think I have a start of explanation.

The two pictures I isolated from a transmission between CasparCG 1080i50 and studio monitor seems to be directly interpolated from the even and odd pictures send by Caspar but no mix is done by studio monitor.
When I mix the two pictures I obtain the real picture.

It is possible that studio monitor (and the tricaster by another way) interpret this double stream as one single stream and interpolate each frame instead of mixing two successives pictures.

I investigated in casparCG source code and it seem to be transmitted according to the specification of the NDI library.

But there’s two ways to send interlaced streams and it’s possible that the “official” way is the other (send the two fields together to the library instead of two fields separated).

That doesn’t explain the behavior of the Tricaster but it’s a good start.

What do you mean “change your graphics with interlacing in mind”?