mirror of https://git.ffmpeg.org/ffmpeg.git
Fix timestamp scaling in the overlay filter.
Compute the outpicref PTS in start_frame(), since it is required for comparing that value with the value of the overpicref. Originally committed as revision 25828 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
d38c340fdc
commit
9b195435b3
|
@ -212,6 +212,8 @@ static void start_frame(AVFilterLink *inlink, AVFilterBufferRef *inpicref)
|
|||
OverlayContext *over = ctx->priv;
|
||||
|
||||
inlink->dst->outputs[0]->out_buf = outpicref;
|
||||
outpicref->pts = av_rescale_q(outpicref->pts, ctx->inputs[MAIN]->time_base,
|
||||
ctx->outputs[0]->time_base);
|
||||
|
||||
if (!over->overpicref || over->overpicref->pts < outpicref->pts) {
|
||||
AVFilterBufferRef *old = over->overpicref;
|
||||
|
@ -322,9 +324,6 @@ static void draw_slice(AVFilterLink *inlink, int y, int h, int slice_dir)
|
|||
AVFilterBufferRef *outpicref = outlink->out_buf;
|
||||
OverlayContext *over = ctx->priv;
|
||||
|
||||
outpicref->pts = av_rescale_q(outpicref->pts, ctx->inputs[MAIN]->time_base,
|
||||
outlink->time_base);
|
||||
|
||||
if (over->overpicref &&
|
||||
!(over->x >= outpicref->video->w || over->y >= outpicref->video->h ||
|
||||
y+h < over->y || y >= over->y + over->overpicref->video->h)) {
|
||||
|
|
Loading…
Reference in New Issue