History

vsrc_buffer: count the number of failed requests.

Nicolas George committed 14 years ago

Commit 2d6522b1 parent f75ee402 files · +18 −0Browse files

Showing the changes to libavfilter/vsrc_buffer.c (1 of 2 files). Show all

Unified · Split

libavfilter/vsrc_buffer.c+9−0
@@ -40,6 +40,7 @@ typedef struct { · 39 unmodified lines
4040 AVRational sample_aspect_ratio;
4141 char sws_param[256];
4242 int eof;
43+ unsigned nb_failed_requests;
4344 } BufferSourceContext;
4445
4546 #define CHECK_PARAM_CHANGE(s, c, width, height, format)\
@@ -123,6 +124,7 @@ int av_vsrc_buffer_add_video_buffer_ref(AVFilterContext *buffer_filter, · 77 unmodified lines
123124 avfilter_unref_buffer(buf);
124125 return ret;
125126 }
127+ c->nb_failed_requests = 0;
126128
127129 return 0;
128130 }
@@ -147,6 +149,7 @@ int av_buffersrc_buffer(AVFilterContext *s, AVFilterBufferRef *buf) · 18 unmodified lines
147149
148150 if ((ret = av_fifo_generic_write(c->fifo, &buf, sizeof(buf), NULL)) < 0)
149151 return ret;
152+ c->nb_failed_requests = 0;
150153
151154 return 0;
152155 }
@@ -178,6 +181,11 @@ int av_vsrc_buffer_add_frame(AVFilterContext *buffer_src, · 25 unmodified lines
178181 }
179182 #endif
180183
184+unsigned av_vsrc_buffer_get_nb_failed_requests(AVFilterContext *buffer_src)
185+{
186+ return ((BufferSourceContext *)buffer_src->priv)->nb_failed_requests;
187+}
188+
181189 static av_cold int init(AVFilterContext *ctx, const char *args, void *opaque)
182190 {
183191 BufferSourceContext *c = ctx->priv;
@@ -249,6 +257,7 @@ static int request_frame(AVFilterLink *link) · 65 unmodified lines
249257 if (!av_fifo_size(c->fifo)) {
250258 if (c->eof)
251259 return AVERROR_EOF;
260+ c->nb_failed_requests++;
252261 return AVERROR(EAGAIN);
253262 }
254263 av_fifo_generic_read(c->fifo, &buf, sizeof(buf), NULL);

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t