summaryrefslogtreecommitdiff
path: root/ffmpeg.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-04-24 23:44:56 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-04-24 23:45:09 +0200
commit8f899545502c287653223ca27522c4abcd3a2e91 (patch)
tree1b633d81c6104786d65ef05c6da1426bbead30e1 /ffmpeg.c
parentfe5bc46f60c0ebd82593999520ebff1d230b0483 (diff)
parent8c4022aceb68558df655059cef4d570625dc1d09 (diff)
Merge remote-tracking branch 'qatar/master'
* qatar/master: avconv: fix a segfault on -c copy with -filter_complex. isom: Support more DTS codec identifiers. Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'ffmpeg.c')
-rw-r--r--ffmpeg.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/ffmpeg.c b/ffmpeg.c
index 5c6a94fba5..cef7e425d1 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2959,7 +2959,11 @@ static int transcode_init(void)
}
if (ost->stream_copy) {
- uint64_t extra_size = (uint64_t)icodec->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE;
+ uint64_t extra_size;
+
+ av_assert0(ist && !ost->filter);
+
+ extra_size = (uint64_t)icodec->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE;
if (extra_size > INT_MAX) {
return AVERROR(EINVAL);
@@ -4893,6 +4897,13 @@ static void init_output_filter(OutputFilter *ofilter, OptionsContext *o,
ofilter->ost = ost;
+ if (ost->stream_copy) {
+ av_log(NULL, AV_LOG_ERROR, "Streamcopy requested for output stream %d:%d, "
+ "which is fed from a complex filtergraph. Filtering and streamcopy "
+ "cannot be used together.\n", ost->file_index, ost->index);
+ exit_program(1);
+ }
+
if (configure_output_filter(ofilter->graph, ofilter, ofilter->out_tmp) < 0) {
av_log(NULL, AV_LOG_FATAL, "Error configuring filter.\n");
exit_program(1);