On Thu, 20 Dec 2007 15:17:29 +0100 Vitor <[EMAIL PROTECTED]> wrote: > Hi > > Vitor wrote: > > Vitor wrote: > >> Víctor Paesa wrote: > >>> On Dec 4, 2007 4:24 AM, jgh lrhg <[EMAIL PROTECTED]> wrote: > >>>> Hi all! > >>>> I was built successed ffmpeg with vsrc_ppm but i don't know how > >>>> to add logo to video using vsrc_ppm. > >>>> Anyone tell me agrs to add logo or watermark to video using > >>>> vsrc_ppm. Thanks! > >>> It should be a command alike to this one: > >>> > >>> ffmpeg -i input.avi -vfilters graph_file=ppm.desc output.avi > >>> > > > > [...] > > > >>> But it did not work as expected, as the output.avi has only two > >>> frames: > >> [...] > >> > >>> Bobby, Vitor, could you please shed some ligth on this result? > >> The problem is with my ffmpeg patch. ffplay works fine. I'll look > >> into it soon... > > > > Just an update on this: the problem don't seems to be in the FFmpeg > > patch but something to do with miscalculating the timestamp of the > > filtered frame (FFplay is just less sensible to the problem)... > > > > Looks like the problem was in the overlay filter. Bobby, can you give > a look at this patch? > > -Vitor > > > diff -u libavfilter2/vf_overlay.c libavfilter/vf_overlay.c > --- libavfilter2/vf_overlay.c 2007-11-06 20:52:43.000000000 >+0100 > +++ libavfilter/vf_overlay.c 2007-12-20 13:59:45.000000000 > +0100 > @@ -141,7 +141,7 @@ > if(!over->pics[1][0]) return 1; > > if(over->pics[0][0]->pts == over->pics[1][0]->pts) return 2; > - return !!(over->pics[0][0]->pts < over->pics[1][0]->pts); > + return (over->pics[0][0]->pts > over->pics[1][0]->pts); > }
Aren't these lines equivalent? > > static void copy_image(AVFilterPicRef *dst, int x, int y, > diff -u libavfilter2/vsrc_ppm.c libavfilter/vsrc_ppm.c > --- libavfilter2/vsrc_ppm.c 2007-12-20 15:09:44.000000000 +0100 > +++ libavfilter/vsrc_ppm.c 2007-12-20 15:11:27.000000000 +0100 > @@ -85,7 +85,7 @@ > > fclose(ppm->in); > ppm->in = NULL; > - } else ppm->pic->pts += 30; > + } else ppm->pic->pts += 40000; Ideally this would be made configurable, but since vsrc_ppm was just a quick hack made for testing, it doesn't really matter. > > out = avfilter_ref_pic(ppm->pic, ~AV_PERM_WRITE); > avfilter_start_frame(link, out); -- Bobby Bingham Never trust atoms. Or anything made of atoms. このメールは再利用されたバイトでできている。 _______________________________________________ FFmpeg-soc mailing list [email protected] http://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-soc
