You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
buffersrc: avoid creating unnecessary buffer reference
This commit is contained in:
@@ -323,21 +323,19 @@ static int request_frame(AVFilterLink *link)
|
|||||||
|
|
||||||
switch (link->type) {
|
switch (link->type) {
|
||||||
case AVMEDIA_TYPE_VIDEO:
|
case AVMEDIA_TYPE_VIDEO:
|
||||||
if ((ret = ff_start_frame(link, avfilter_ref_buffer(buf, ~0))) < 0 ||
|
if ((ret = ff_start_frame(link, buf)) < 0 ||
|
||||||
(ret = ff_draw_slice(link, 0, link->h, 1)) < 0 ||
|
(ret = ff_draw_slice(link, 0, link->h, 1)) < 0 ||
|
||||||
(ret = ff_end_frame(link)) < 0)
|
(ret = ff_end_frame(link)) < 0)
|
||||||
goto fail;
|
return ret;
|
||||||
break;
|
break;
|
||||||
case AVMEDIA_TYPE_AUDIO:
|
case AVMEDIA_TYPE_AUDIO:
|
||||||
ret = ff_filter_samples(link, avfilter_ref_buffer(buf, ~0));
|
ret = ff_filter_samples(link, buf);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
avfilter_unref_bufferp(&buf);
|
||||||
return AVERROR(EINVAL);
|
return AVERROR(EINVAL);
|
||||||
}
|
}
|
||||||
|
|
||||||
fail:
|
|
||||||
avfilter_unref_buffer(buf);
|
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user