On Fri, Nov 13, 2015 at 4:41 PM, John Stebbins <[email protected]> wrote: > On Tue, 2015-11-10 at 17:50 +0100, Anton Khirnov wrote: >> Quoting Vittorio Giovara (2015-10-23 18:31:55) >> > On Fri, Oct 23, 2015 at 3:31 PM, Luca Barbato <[email protected]> >> > wrote: >> > > On 23/10/15 15:29, Vittorio Giovara wrote: >> > > > + // If mp3 packets have a non constant duration, they could >> > > > need a parser >> > > > + if (st->codec->codec_id == AV_CODEC_ID_MP3 && >> > > > + sc->stts_count > 3 && >> > > > + sc->stts_count * 10 > st->nb_frames && >> > > > + sc->time_scale == st->codec->sample_rate) { >> > > > + st->need_parsing = AVSTREAM_PARSE_FULL; >> > > > + } >> > > >> > > We already set PARSE_FULL for another flavour, what breaks if we >> > > just >> > > set it always? Heuristics are fragile. >> > >> > There were a few objections to that during the discussion between >> > wm4/nev/j45 that followed when analyzing the problem >> >> What objections specifically? >> > > The objections were to a more general suggestion I made. This failure > also appears in MKV files that are muxed the same way (i.e. mp3 audio > frames split across multiple container packets). And it can happen for > other audio types as well. So I made a suggestion that a more general > application of full parsing might be desirable here and in other > containers. The objection was that we shouldn't make sweeping changes > like this. And I tend to agree that it's better to fix these things as > they show up in the wild unless we have a clear spec that says we are > doing it wrong.
Anyone willing to resume this old thread and fix the problem properly? -- Vittorio _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
