Showing the changes to libavfilter/avfilter.c (1 of 2 files). Show all
Unified · Split
| @@ -1668,6 +1668,26 @@ void ff_inlink_request_frame(AVFilterLink *link) · 1667 unmodified lines | |||
| 1668 | ff_filter_set_ready(link->src, 100); | 1668 | ff_filter_set_ready(link->src, 100); |
| 1669 | } | 1669 | } |
| 1670 | 1670 | ||
| 1671 | void ff_inlink_set_status(AVFilterLink *link, int status) | ||
| 1672 | { | ||
| 1673 | if (link->status_out) | ||
| 1674 | return; | ||
| 1675 | link->frame_wanted_out = 0; | ||
| 1676 | link->frame_blocked_in = 0; | ||
| 1677 | ff_avfilter_link_set_out_status(link, status, AV_NOPTS_VALUE); | ||
| 1678 | while (ff_framequeue_queued_frames(&link->fifo)) { | ||
| 1679 | AVFrame *frame = ff_framequeue_take(&link->fifo); | ||
| 1680 | av_frame_free(&frame); | ||
| 1681 | } | ||
| 1682 | if (!link->status_in) | ||
| 1683 | link->status_in = status; | ||
| 1684 | } | ||
| 1685 | |||
| 1686 | int ff_outlink_get_status(AVFilterLink *link) | ||
| 1687 | { | ||
| 1688 | return link->status_in; | ||
| 1689 | } | ||
| 1690 | |||
| 1671 | const AVClass *avfilter_get_class(void) | 1691 | const AVClass *avfilter_get_class(void) |
| 1672 | { | 1692 | { |
| 1673 | return &avfilter_class; | 1693 | return &avfilter_class; |