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

Reply via email to