Skip to content
This repository

Fusion - artifacts when playing 1080i TV channel #80

Closed
Gujs opened this Issue · 10 comments

3 participants

Gujs Rainer Hochecker Peter Frühberger
Gujs

Hi,

All this was tested on OE20 branch.

I have big problems with playing one of 1080i HDTV channels. I could not reproduce this on other 1080i channels I have. You can find this channel on HotBird 13E satellite. It is called Supertennis HD, 11,096,000 kHz Horizontal.

The playback itself starts without problem, but after some time artifacts show up. It looks like the signal on satellite would be bad, but this isn't the case. I was playing the same channel on ION system at the same time and it worked flawless. I tried with de-interlace setting On or Off and it didn't make any difference.

I created around 15 minute long recording for test. if you start playback of this recording you will get artifacts after some time (it was 4 minutes for me). So please start playback from the beginning. You will also see that playback is not really smooth on this recording, which is kind of strange as it plays nice as Live channel. And recording itself also plays fine on ION system.

https://dl.dropbox.com/u/57341262/OE/Video_samples/ATP_500_Pechino._Finale_%28live%29.mkv

Gujs

The recording itself is not mkv. It is TS as I had passthrough option enabled in tvheadend.

Rainer Hochecker
Owner

Even on NVidia it does not play smooth. The timestamps are messed up.

20:24:11 T:140489848252160   DEBUG: CPullupCorrection: detected pattern of length 48: 0.00 40000.00 0.00 40000.00 -0.00 40000.00 -0.00 40000.00 0.00 40000.00 0.00 40000.00 -0.00 40000.00 -0.00 40000.00 0.00 40000.00 0.00 40000.00 -0.00 40000.00 -0.00 40000.00 40000.00 40000.00 -80000.00 40000.00 40000.00 40000.00 -0.00 40000.00 0.00 40000.00 0.00 40000.00 -0.00 40000.00 -0.00 40000.00 0.00 40000.00 0.00 40000.00 -0.00 40000.00 -0.00 40000.00, frameduration: 20000.000000

I think this is either an ffpeg issue or tvheadend. Can you record a sample with something other than tvheadend?

Gujs

Hi, I recorded in mkv format now. and this file plays smooth, but it still has the same artifacts after 4 or more minutes of playback. Is this OK for you. As I will have to setup something else on my backend server and I am afraid I will not have time during week.

I am uploading mkv file now, but it will take at least 2 hours on my line. I will report back the link of sample.

I would also like to make clear that live watching of this channel at the same time on ION and Fusion only has problems on Fusion. So it should not be tvheadend fault for this.

Rainer Hochecker
Owner

I think the artifacts are just a symptom for some issue earlier in the chain. Look at the pattern pullup correction has detected. I remember a case with a similar sequence of timestamps. The reason was that the input stream was continuously missing fields. ffmpeg does not handle those gaps in a correct way, the result are messed up timestamps which are even jumping back.

vdpau is more robust against this reordering of frames which must happen inside ffmpeg. The API requires explicit setting of reference frames. XvBA gets this info from the PPS.

I can't tune to hotbird in order to check whether the problem is the stream itself or your tv card. For the other case I remember the reason was a Haupauge tuner.

Gujs

Here is the link of mkv recording https://dl.dropbox.com/u/57341262/OE/Video_samples/ATP_500_Tokyo._Finale_.mkv

I can try VDR over the weekend if you think this can help us clear things up. I cannot try with different DVB card as these are the only cards I own which support DVB-S2.

Gujs

I was testing this with @fritsch today. We discovered that something is definitely wrong in stream itself as it always fails at the same time. We discovered it doesn't have any influence for how long this stream is played.

We also found out that this problem can be "fixed" with simple seek forward. This means that something gets corrected in decoding part when seeking happens.

Rainer Hochecker
Owner

Seek flushes the decoder. Log out pts and dts of packets before they go into ffmpeg. I guess that you will observe missing packets.

Peter Frühberger

Perhaps it is possible to measure this state. If we see that we are in a somewhat "deadlock", we recover us by flushing the decoder?

Rainer Hochecker
Owner

I would rather look at the actual problem than discussing a work-around for symptoms. The timestamps are totally messed up and this causes continuous dropping. The artifacts are just a following error down the chain.

Peter Frühberger

Yes. In any case the better strategy, but therefore more hard to do. Fixing bugs in ffmpeg seems to be a time invasive process ...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.