Nicolas George
299387ebf4
vf_settb: rename the file as f_settb.
2012-07-08 19:54:08 +02:00
Nicolas George
65e65e3ce2
settb: cosmetic: reindent vf_settb structure.
2012-07-08 19:54:08 +02:00
Nicolas George
ba856c0be5
lavfi: implement asettb filter.
2012-07-08 19:54:08 +02:00
Nicolas George
bba819bd8f
fate: FLAC tests require SAMPLES.
2012-07-08 13:41:39 +02:00
Nicolas George
5997285d3a
ffmpeg: poll filters even after -t limit.
...
If not, frames can still arrive to the sink and accumulate.
The frames past recording time will be ignored in do_*_out.
2012-07-06 18:33:48 +02:00
Nicolas George and Michael Niedermayer
8293a21a9c
lavc: fix shared build after dnxhd merge.
...
Signed-off-by: Nicolas George <nicolas.george@normalesup.org >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2012-07-06 02:44:17 +02:00
Nicolas George
8b421fad24
dpx: sanitize aspect ratio.
...
Fixes some samples where the ratio is declared as -1/-1.
2012-07-04 18:59:39 +02:00
Nicolas George
2fc354f90d
ffmpeg: rework checks for the -t option.
...
This commit is based on libav's implementation and
makes sure to compare output timestamps together.
It also reduces the differences with avconv.
The changes to the test reference files are caused
by an additional packet at the end, the timestamp
of the frame encoded by this packet is always
strictly below the limit stated by the -t option.
2012-07-04 16:20:47 +02:00
Nicolas George
7beeea8f17
error: define AVERROR_EXTERNAL.
...
This code is intended for errors in external libraries
when no corresponding error code can be found.
AVERROR_UNKNOWN is too vague for that and looks like AVERROR_BUG.
2012-07-04 15:45:05 +02:00
Nicolas George
aa39516a04
error: define AVERROR_BUFFER_TOO_SMALL.
...
Some API require a buffer and return a specific error
if it is too small. This error code helps to map codes.
2012-07-04 15:33:14 +02:00
Nicolas George
be24f85176
ffmpeg: re-set frame_size after filter graph reset.
...
The filter contexts are completely cleared,
so the frame size can not be kept.
2012-06-30 21:44:25 +02:00
Nicolas George
6f5e7e8690
ffmpeg: use the more powerful version of abuffersink.
2012-06-30 14:03:54 +02:00
Nicolas George
1f5c1333a7
sink_buffer: implement fixed frame size.
2012-06-30 14:03:54 +02:00
Nicolas George
0689d5e17a
lavfi: implement samples framing on links.
...
Links can be set up to group samples into buffers of
specified minimum and maximum size.
2012-06-30 14:03:54 +02:00
Nicolas George
c9c4835f51
fate: add a test for the -force_key_frames option.
...
It broke twice in the last three months due to other changes.
2012-06-30 13:49:43 +02:00
Nicolas George
20a8dca57f
ffmpeg: fix parsing of -force_key_frames option.
...
Identical to commit 4f6a1c9 by Reimar Döffinger,
that was lost after the merge of 19ad567 .
2012-06-30 13:49:43 +02:00
Nicolas George
8069db8633
ffmpeg: warn that -t does not work with -filter_complex.
2012-06-28 21:40:50 +02:00
Nicolas George
2c793b8501
ffmpeg: warn when -t is used for inputs.
...
Using -t on an input already have surprising results.
Furthermore, using it on an input or an output makes
a real difference if there are speed-altering filters.
Implementing -t for inputs will probably result in some
behavour changes.
2012-06-28 21:40:43 +02:00
Nicolas George
fcf8706ed9
sink_buffer: warn when there are too many buffers.
2012-06-28 21:10:03 +02:00
Nicolas George
05d6cc116e
buffersrc: warn when there are too many buffers.
2012-06-28 21:10:03 +02:00
Nicolas George
d4c45b8adf
Revert "Revert "x86: fft: win64: fix stack alignment for memcpy() call""
...
This reverts commit f767658414 .
The bug it introduces has been fixed.
2012-06-26 15:56:01 +02:00
Nicolas George
91765594dd
Revert "Revert "x86: fft: convert sse inline asm to yasm""
...
This reverts commit fd91a3ec44 .
The bug it introduced has been fixed.
2012-06-26 15:55:41 +02:00
Nicolas George
784675ca91
sink_buffer: make opaque argument optional.
2012-06-26 13:17:30 +02:00
Nicolas George
a2bd8a9384
buffersink: group libav API functions.
2012-06-26 13:17:29 +02:00
Nicolas George
fd91a3ec44
Revert "x86: fft: convert sse inline asm to yasm"
...
This reverts commit 8299260470 .
It breaks shared builds on x86_64.
2012-06-26 13:00:14 +02:00
Nicolas George
f767658414
Revert "x86: fft: win64: fix stack alignment for memcpy() call"
...
This reverts commit 8725da49a2 .
Necerrary to revert 8299260470 .
2012-06-26 12:59:48 +02:00
Nicolas George
6fd0b55ab2
showwaves: fix PTS computation.
2012-06-23 15:08:23 +02:00
Nicolas George
6d627eae3c
showwaves: fix first sample of frame test.
...
Avoids a huge memleak when n != 1.
2012-06-23 15:08:22 +02:00
Nicolas George
bd9939f495
lavfi: display pad type with mismatch error message.
2012-06-23 11:34:46 +02:00
Nicolas George
9e63c30daa
lavf: add a real SRT muxer.
...
This muxer supports CODEC_ID_SRT with the timestamps in the packet data
and CODEC_ID_TEXT with the timestamps in the packet fields.
Makes -scodec copy work from Matroska.
2012-06-21 20:52:56 +02:00
Nicolas George
7681d0eaca
lavd/lavfi: do not set the channel layout list.
...
The list was set to avfilter_all_channel_layouts,
which is really all common channel layouts.
Not setting it leaves an empty list,
which now means really all.
2012-06-21 19:40:49 +02:00
Nicolas George
8c3514647e
ffmpeg.c: count subtitles in total size.
...
This avoids the "Output file is empty" warning
with subtitles-only files.
2012-06-18 09:40:01 +02:00
Nicolas George
c49e960a60
ffprobe: dump AVPacket.convergence_duration.
2012-06-18 09:39:17 +02:00
Nicolas George
9ae3e45521
ffprobe: add -show_data option.
2012-06-18 09:38:36 +02:00
Nicolas George
69bf775e9f
bprint: implement vsnprintf for win32.
2012-06-14 13:54:00 +02:00
Nicolas George
0d24931604
vf_fps: set frame_rate.
2012-06-10 10:53:03 +02:00
Nicolas George
c8428a0d06
vf_tile: update deprecated functions.
2012-06-10 10:40:33 +02:00
Nicolas George
7b993c4a51
vf_tile: set frame_rate.
2012-06-10 10:35:17 +02:00
Nicolas George
4adf5dfadb
sdl: fix aspect ratio computations.
...
The rounding was wrong due to incorrect ue of floats,
changed to rationals and av_rescale.
The results were not properly passed to SDL.
2012-06-10 09:57:50 +02:00
Nicolas George
3ff6b1a2b3
sdl: fix overlay size.
...
The size passed to SDL_CreateYUVOverlay is the size
of the video in pixels, it must not take the aspect ratio
into account.
2012-06-10 09:42:31 +02:00
Nicolas George
2f9907be3e
sdl: add AVFMT_VARIABLE_FPS and AVFMT_NOTIMESTAMPS.
...
It allows vsync to be automatically set to passthrough.
2012-06-10 09:42:31 +02:00
Nicolas George
6fef82f22d
ffmpeg: with filter_complex, avoid random in<->out mapping.
...
With complex filters, an output can come from any input,
or several inputs, including inputs of a different type.
Copying the codec parameters from the first input with
the same type does not make any sense.
This does not change anything for simple 1->1 filters,
as source_index is set in that case.
2012-06-09 08:42:50 +02:00
Nicolas George
fbaa8fe6c6
ffmpeg: init icodec.
...
With complex filter graphs, it can end up accessed
without having been set.
2012-06-09 08:42:50 +02:00
Nicolas George
8362d734a3
ffmpeg: use the frame rate computed by lavfi.
...
This frame rate is more reliable than the one copied
from the input stream, so it is used in priority.
2012-06-09 08:42:50 +02:00
Nicolas George
5f281e94ba
ffmpeg: add frame rate to the buffersrc arguments.
...
The arguments now use the key=value syntax.
2012-06-09 08:42:50 +02:00
Nicolas George
0f62125643
buffersrc: deprecate flat options syntax.
2012-06-09 08:42:50 +02:00
Nicolas George
9ca440679d
buffersrc: accept the frame rate as argument.
2012-06-09 08:42:50 +02:00
Nicolas George
dcaa4efcee
buffersrc: accept key=value arguments.
...
The current flat arguments syntax is not easily extensible
due to sws_param possibly containing commas.
This is also consistent with abuffersrc.
2012-06-09 08:42:50 +02:00
Nicolas George
283cc05938
buffersink: add av_buffersink_get_frame_rate().
2012-06-09 08:42:50 +02:00
Nicolas George
7b42036b3b
lavfi: add a frame_rate field to AVFilterLink.
2012-06-09 08:42:50 +02:00
Nicolas George
6668ef7567
cmdutils: include threading caps in codecs listing.
...
Suggested by Roger Pack on ffmpeg-user.
2012-06-07 23:19:20 +02:00
Nicolas George
e0545262a2
amerge: accept multiple inputs.
2012-06-07 22:51:08 +02:00
Nicolas George
e8e492b302
af_amerge: move nb_in_ch into the in structure.
...
With that change, there is only one array for the inputs,
it will make easier to implement a variable number of inputs.
2012-06-07 22:28:32 +02:00
Nicolas George
e45a92dc88
audioconvert: implement av_bprint_channel_layout().
...
And reimplement av_get_channel_layout_string() on top of it.
2012-06-07 22:28:32 +02:00
Nicolas George
7a2b429175
fate: add bprint test.
2012-06-07 22:28:32 +02:00
Nicolas George
b3e2bb08a9
bprint: add av_bprint_init_for_buffer().
2012-06-07 22:28:32 +02:00
Nicolas George
9148ae5b91
opt: add test for IMAGE_SIZE and PIXEL_FMT.
2012-06-07 22:13:59 +02:00
Nicolas George
61c266d72f
opt: free test_ctx.string at the end.
...
Makes valgrind happy.
2012-06-07 22:13:59 +02:00
Nicolas George
42b774ab6f
opt: init test_ctx to 0.
...
Otherwise, setting string will try to free a random address.
2012-06-07 22:13:59 +02:00
Nicolas George
d9b0d75c56
opt: add AV_OPT_TYPE_PIXEL_FMT.
2012-06-07 22:13:59 +02:00
Nicolas George
25e87fc5f6
ffmpeg: move keyboard interaction in a function.
...
It makes the transcode loop easier to read (30% less code)
and the differences with avconv easier to spot.
2012-06-07 17:13:02 +02:00
Nicolas George
9915a33fc2
lavfi/audio: fix size of copied samples.
...
Fixes sporadic segfaults with some filters.
2012-06-07 17:03:45 +02:00
Nicolas George
aba8065adb
avfiltergraph: call query_formats on inputs first.
...
This is a temporary workaround for amerge,
until format renegociation is implemented.
Should fix trac ticket #1400 .
2012-06-05 13:26:34 +02:00
Nicolas George
6a4c5c730e
avfiltergraph: check query_formats return value.
2012-06-05 13:26:34 +02:00
Nicolas George
8b0e173529
ffmpeg: use filter time base as codec time base.
2012-06-03 23:43:57 +02:00
Nicolas George
48b5bcb3dd
ffmpeg: avoid NULL dereference with filters.
...
icodec can be NULL if there is no input stream
clearly associated with the output stream.
2012-06-03 23:43:57 +02:00
Nicolas George
7f17f4f1a7
af_amerge: use the buferqueue API.
2012-06-03 10:04:01 +02:00
Nicolas George
2f2d47ab63
af_astreamsync: set samples rate in query_formats.
2012-06-03 10:04:01 +02:00
Nicolas George
06bf6d3bc0
vf_overlay: rewrite request/push logic.
...
The old implementation, upon receiving a frame on the main
input, would request an overlay frame if necessary. This could
generate an infinite recursion, off-by-one frame mismatch and
other harmful effects, especially it the split filter is present
upgraph.
The new implementation uses the linear approach: it uses two
buffer queues for frames received out of turn and forwards
request_frame calls to the input where a frame is necessary.
2012-05-31 17:27:27 +02:00
Nicolas George
6d679c4359
lavfi: add a generic API for buffer queues.
2012-05-31 17:27:27 +02:00
Nicolas George
72f3786d0f
sink_buffer: guard against NULL frames.
...
This only happens if some filter somewhere is bogus,
but it helps debugging.
2012-05-31 17:27:27 +02:00
Nicolas George
0da28d689c
af_amerge: compute output timestamp.
...
Use the timestamps from the first input.
2012-05-23 14:56:51 +02:00
Nicolas George
e6aee46760
af_amerge: set samples rate in query_formats.
2012-05-23 14:56:50 +02:00
Nicolas George
4a5d18b6e2
vsrc_mandelbrot: use AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
dc6a02de01
vsrc_life: use AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
ca554fbc2f
vsrc_cellauto: use AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
2987efe9ba
vf_ass: use AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
5732f40e3f
x11grab: use AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
3e63071115
v4l2: use AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
0ef4924db4
sdl: use AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
9bcd70aa23
bktr: use AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
16a44b41ab
vsrc_testsrc: use AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
2ec3e5767e
opt: add AV_OPT_TYPE_IMAGE_SIZE.
2012-05-20 18:24:20 +02:00
Nicolas George
6adefeef45
buffersrc: cosmetic: reindent.
2012-05-20 15:41:58 +02:00
Nicolas George
ea07063fd8
cmdutils: allow to specify a stream by its ID.
...
The stream can be specified as "#129 " or "#0x81".
It is especially useful for VOBs dumped from a DVD,
where the language-id mapping is available externally
and the probing can find the streams in a random order.
2012-05-20 12:47:27 +02:00
Nicolas George and Michael Niedermayer
3d2515a8f3
f_split: fix output type.
...
The previous version checked the filter context name,
instead of checking the filter name.
The new version just uses the same type as the input.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org >
2012-05-19 19:23:37 +02:00
Nicolas George
5ac9ef6493
avfilter: make AVFilterFormats compatible with libav.
...
The list goes back to being simple integers,
and avfilter_make_format64_list is fixed to work
with the correct structure directly.
2012-05-19 15:30:51 +02:00
Nicolas George
00be2f5726
ffmpeg: adapt to the buffersrc API changes.
2012-05-19 10:59:52 +02:00
Nicolas George
aa1246ea42
lavfi: unify src_buffer and buffersrc.
...
Most of the code is moved to buffersrc.c
to help Git see the similarities.
src_buffer.c still contains the obsolete compatibility functions.
The format change detection code was removed as it has been
implemented directly in ffmpeg.
It can easily be brought back from the history.
2012-05-19 10:59:52 +02:00
Nicolas George
7997fc49ef
lavfi: remove stray reference to planar/packed.
2012-05-19 10:59:52 +02:00
Nicolas George
9567f410aa
avfilter: move some fields in AVFilterLink.
...
It restores ABI compatibility with libav.
The fields that move were very recent or morally private.
2012-05-19 10:59:52 +02:00
Nicolas George
c0c2424f73
fate: ffprobe tests require SAMPLES.
2012-05-18 15:19:03 +02:00
Nicolas George
9cf5bcded0
ffmpeg: accept + prefix to -pix_fmt option to disable automatic conversions.
2012-05-14 21:29:58 +02:00
Nicolas George
440af105f2
lavfi: add avfilter_graph_set_auto_convert().
2012-05-14 21:29:58 +02:00
Nicolas George
281bde2789
udp: check for HAVE_PTHREAD_CANCEL instead of HAVE_PTHREADS.
...
Some environments, for example Android, pretend to have pthreads
but actually have only a partial implementation.
2012-05-14 19:32:43 +02:00
Nicolas George
83f954e859
configure: check for pthread_cancel.
2012-05-14 19:32:43 +02:00
Nicolas George
7a44223319
lavfi: document filter design subtleties.
...
The details on reference ownership and permissions are missing.
2012-05-14 18:56:52 +02:00
Nicolas George
75e0324eab
src_buffer: move code to avoid forward declarations.
2012-05-08 19:38:18 +02:00
Nicolas George
67a316bbda
vsrc_buffer: deprecate the header.
2012-05-06 16:18:11 +02:00
Nicolas George
aaa94f2890
vsrc_buffer: deprecate av_vsrc_buffer_add_video_buffer_ref.
2012-05-06 16:18:10 +02:00