Klaus,
I got a new reply from Teracom, where they had looked into this and could not see any problem on their end. They did say they had recently changed coding platform for TV6 though but it produced correct codes.
So, I did some further analysis of this, and I believe now the error is in vdr/remux.c.
It seems the 'new coding platform', before an I-frame, always puts the picture startcode, ie '00000100' at the end of the TS packet. This means that the code:
independentFrame = ((Data[i + 2] >> 3) & 0x07) == 1; // I-Frame
looks at the wrong byte, as i+2 > TS_SIZE
For non-I frames it can appear anywhere in the packet. The idea seems to be that an I-frame is always at the start of a TS-packet, do not ask me why.
So, your instinct of rejecting my suggestion for a patch was correct.
I have sample TS data of this stream, or dvbsnoop output of the relevant PID, if you are interested.
/Johan
Johan Andersson skrev 2011-05-29 19:14:
[...] I got a very positive sounding response from Teracom. I got the impression they are really going to fix this. For anyone else interested I simply mailed their support address on their homepage http://www.teracom.se, ie: kundtjanst@teracom.se
/Johan
Klaus Schmidinger skrev 2011-05-28 23:55:
On 28.05.2011 10:57, Johan Andersson wrote:
I sent off a question to customer support at Teracom and got a reply indicating that they do have an error relating to these channels in their 'coding platform'.
Thanks for actually doing this - finally a broadcaster who at least admits *they* have a problem ;-)
'Your problem seems to relate to the error we have', was their statement. They had no due date for fixing it though.
Maybe they would give this more priority if more people contacted them about this. Once replying to inquiries takes up a considerable amount of their time, they might consider doing something about it. Perhaps you should post here how to contact them, so other viewers of their channels could also bother them ;-)
Klaus