[FFmpeg-devel] [PATCH] DVBSUBTILES, fixes to decoding/encoding and a new way of burning the subtitles onto the screen

JULIAN GARDNER joolzg at btinternet.com
Mon Oct 3 17:16:55 CEST 2011


>>  >thanks, i applied the 3 hunks out of 18 but i dont see how they can fix 

> the
>>  >corruption. Could you explain what causes the corruption?
>>  >
>>  >What they do is they skip the first subtitle, but if one would seek
>>  >they would not skip it and still lead to corruption. Also the original
>>  >code displayed the first subtitle without corruption just wrong colors
> [...]
>>  What the code does is not try to do any display until it gets a new 
> "epoch", the subtitle test stream you have has corruption at the 
> beginning as it was a chopped ts. I will look into the real reason for the 
> glitch but this is the correct way, wait for a "full" update, objects, 
> regions, cluts etc before trying to use the data
> someone could concatenate several choped ts streams or even create
> invalid combinations of objects regions and cluts intentionally,
> epoch is never reset thus once its 1 its not going to help anymore
> the subtitle decoder should not end up using uninitialised memory
> or worse crashing or even worse writing outside arrays
> Thats what iam concerned about (and no ive not seen it do the later 2
> just randomly changing corruption outside subtitles on the screen, so
> at least used uninitialized memory was used)
> [...]
> -- 
> Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
> it is not once nor twice but times without number that the same ideas make
> their appearance in the world. -- Aristotle
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

As i said i will go through the code and find the bit that is causing the problem and create a fix for this, the epoch fix is what i use in my engine and upto now, 5 years+, no one has come back and complained, but then i do have proper restarts if the stream stops, which is something ffmpeg does not do!!!


More information about the ffmpeg-devel mailing list