[Libav-user] libavcodec usage inside Cinelerra-GG [LONG]

Carl Eugen Hoyos ceffmpeg at gmail.com
Sun Nov 3 12:15:27 EET 2019


Am So., 3. Nov. 2019 um 07:43 Uhr schrieb Andrew Randrianasulu
<randrianasulu at gmail.com>:
>
> В сообщении от Sunday 03 November 2019 09:01:42 Carl Eugen Hoyos написал(а):
> > Am Sa., 2. Nov. 2019 um 23:32 Uhr schrieb Andrew Randrianasulu
> > <randrianasulu at gmail.com>:
> >
> > > I think I can also link in https://www.cinelerra-gg.org/bugtracker/view.php?id=330
> > > because IMO it shows how wild timestamp can ruin synchro
> >
> > I tested the following and the output file has fine noise, no "pulsed noise":
> > $ ffmpeg -ss 11:00 -i LD_160909_2.avi -qscale 2 out.avi
>
> Yeah, it should work in ffmpeg. This is why I posted this to Libav-user,
> because Cinelerra _is_ libav user, from programmer's perspective ....
>
> https://git.cinelerra-gg.org/git/?p=goodguy/cinelerra.git;a=blob;f=cinelerra-5.1/cinelerra/ffmpeg.C;h=70098ca189c5267b3aeea8bfdb9de8ea19f051ff;hb=HEAD
>
> function int FFStream::seek(int64_t no, double rate)
>
> for some reason I saw timestamps even going negative.

For some files, this is expected but I don't see the code checking
for AV_NOPTS_VALUE.

> Is it normal, for stream seek, or application must deal with this problem ?
>
>
> AVRational time_base = st->time_base;
>       int64_t tstmp = time_base.num > 0 ? secs * time_base.den/time_base.num : 0;
>
> for some reason stream's time_base was going from 1/25 to 1/30000
> after seek, and this confused everything....

Did you already check how ffmpeg.c deals with seeking in this file?

Carl Eugen


More information about the Libav-user mailing list