On 28/04/15 10:44, John Högberg wrote:
> Hi,
> 
> If a PAT is finished while a PMT section filter is opened but not yet
> finished, the PMT section filter is closed and all the received data
> is discarded. This is usually not an issue but some multiplexers
> (With very quick PAT/PMT repetition settings) consistently emit a PMT
> section start, then a PAT, and then the rest of the PMT, causing the
> aforementioned behavior to result in no PMT being finished. On the
> worst set of streams I tested libav was completely unable to read the
> stream information and always had to fall back to probing, resulting
> in it interpreting DVB subtitle tracks as MP3 audio.
> 
> The attached patch fixes the issue through eliminating redundant
> PSI/SI table updates by checking their version field, which is
> required by the standard to be incremented on every change no matter
> how minor.

Looks good, I'd merge this patch tonight if nobody is against it.

> The way the demux is set up the bug itself looks
> unavoidable without a rewrite, but preventing a second *unaltered*
> PAT from closing the PMT section filter makes it behave properly with
> a delay of one PMT repetition.

If you have ideas on how it should be structured better I'd love to hear
them.

lu
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to