summaryrefslogtreecommitdiff
path: root/libavfilter/split.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-07-09 22:10:38 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-07-09 22:40:12 +0200
commitf8911b987de4a84ff8ae92f41ff492ece4acadb9 (patch)
tree0ebda51a6ba23d790da30a7168870928954da395 /libavfilter/split.c
parentbf5386385dc504a076453ad58f61f808677be747 (diff)
parent5467742232c312b7d61dca7ac57447f728d8d6c9 (diff)
Merge remote-tracking branch 'qatar/master'
* qatar/master: mss3: use standard zigzag table mss3: split DSP functions that are used in MTS2(MSS4) into separate file motion-test: do not use getopt() tcp: add initial timeout limit for incoming connections configure: Change the rdtsc check to a linker check avconv: propagate fatal errors from lavfi. lavfi: add error handling to filter_samples(). fate-run: make avconv() properly deal with multiple inputs. asplit: don't leak the input buffer. af_resample: fix request_frame() behavior. af_asyncts: fix request_frame() behavior. libx264: support aspect ratio switching matroskadec: honor error_recognition when encountering unknown elements. lavr: resampling: add support for s32p, fltp, and dblp internal sample formats lavr: resampling: add filter type and Kaiser window beta to AVOptions lavr: Use AV_SAMPLE_FMT_NONE to auto-select the internal sample format lavr: mix: validate internal sample format in ff_audio_mix_init() Conflicts: ffmpeg.c ffplay.c libavcodec/libx264.c libavfilter/audio.c libavfilter/split.c libavformat/tcp.c tests/fate-run.sh Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavfilter/split.c')
-rw-r--r--libavfilter/split.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/libavfilter/split.c b/libavfilter/split.c
index 837dc0da15..98be342bfc 100644
--- a/libavfilter/split.c
+++ b/libavfilter/split.c
@@ -110,15 +110,19 @@ AVFilter avfilter_vf_split = {
.outputs = (AVFilterPad[]) {{ .name = NULL}},
};
-static void filter_samples(AVFilterLink *inlink, AVFilterBufferRef *samplesref)
+static int filter_samples(AVFilterLink *inlink, AVFilterBufferRef *samplesref)
{
AVFilterContext *ctx = inlink->dst;
- int i;
+ int i, ret = 0;
- for (i = 0; i < ctx->nb_outputs; i++)
- ff_filter_samples(inlink->dst->outputs[i],
- avfilter_ref_buffer(samplesref, ~AV_PERM_WRITE));
+ for (i = 0; i < ctx->nb_outputs; i++) {
+ ret = ff_filter_samples(inlink->dst->outputs[i],
+ avfilter_ref_buffer(samplesref, ~AV_PERM_WRITE));
+ if (ret < 0)
+ break;
+ }
avfilter_unref_buffer(samplesref);
+ return ret;
}
AVFilter avfilter_af_asplit = {