Michael Niedermayer
fd6228e657
lavfi: remove now unused args parameter from AVFilter.init and init_opaque
...
This is mostly automated global search and replace
The deprecated aconvert filter is disabled, if it still has users
it should be updated
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-12 11:54:39 +02:00
Anton Khirnov
d69a4177b9
lavfi: remove now unused args parameter from AVFilter.init
...
Conflicts:
libavfilter/avfilter.c
libavfilter/vf_drawtext.c
libavfilter/vf_lut.c
libavfilter/vf_select.c
libavfilter/vf_setpts.c
libavfilter/vsrc_color.c
libavfilter/vsrc_movie.c
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-12 11:54:39 +02:00
Michael Niedermayer
710b0aa801
Merge commit '48a5adab62bd2a553f5069d41fa632a0701835e5'
...
* commit '48a5adab62bd2a553f5069d41fa632a0701835e5':
lavfi: add avfilter_init_str() to replace avfilter_init_filter().
avfilter_graph_create_filter() opaque is still passed to avfilter_init_filter()
which continues to pass it to init_opaque as its still used in the buffer sinks
the sinks should be changed and the opaque passing removed
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-12 01:31:55 +02:00
Michael Niedermayer
eb0f774d4b
Merge commit '1565cbc65cbb9f95c11367314a080068895e0cf0'
...
* commit '1565cbc65cbb9f95c11367314a080068895e0cf0':
lavfi: make avfilter_free() remove the filter from its graph.
Conflicts:
libavfilter/avfilter.c
libavfilter/avfiltergraph.c
libavfilter/graphparser.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-12 00:54:05 +02:00
Michael Niedermayer
4fde705396
Merge commit '111367263af41c88a44bd763ceefc11d53a7f655'
...
* commit '111367263af41c88a44bd763ceefc11d53a7f655':
lavfi: add AVFilterContext.graph.
Conflicts:
libavfilter/avfilter.h
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-12 00:44:18 +02:00
Michael Niedermayer
5c68e14e42
Merge commit 'c2c9801bc9bce688d51d1a96f5f3ea93933e2dee'
...
* commit 'c2c9801bc9bce688d51d1a96f5f3ea93933e2dee':
lavfi: deprecate avfilter_graph_add_filter().
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-12 00:39:09 +02:00
Michael Niedermayer
86070b8e5a
Merge commit 'bc1a985ba030e9861d24965d42792850b43a43ea'
...
* commit 'bc1a985ba030e9861d24965d42792850b43a43ea':
lavfi: replace avfilter_open() with avfilter_graph_alloc_filter().
Conflicts:
libavfilter/avfiltergraph.c
libavfilter/internal.h
libavfilter/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-12 00:31:44 +02:00
Michael Niedermayer
231fd4411f
Merge commit '38f0c0781a6e099f11c0acec07f9b8be742190c4'
...
* commit '38f0c0781a6e099f11c0acec07f9b8be742190c4':
lavfi: merge avfiltergraph.h into avfilter.h
Conflicts:
doc/APIchanges
ffmpeg_filter.c
libavfilter/avfilter.h
libavfilter/avfiltergraph.h
libavfilter/version.h
tools/graph2dot.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-11 23:50:39 +02:00
Michael Niedermayer
9f3ae7aafd
Merge commit '4a37d4b3f8137a4c2bbbca043de076af966b9446'
...
* commit '4a37d4b3f8137a4c2bbbca043de076af966b9446':
lavfi: add const to the pads parameter of avfilter_pad_get_name/type
lavfi: add const to AVFilterContext.filter.
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-11 23:31:01 +02:00
Anton Khirnov
48a5adab62
lavfi: add avfilter_init_str() to replace avfilter_init_filter().
...
Drop the unused opaque parameter from its signature.
2013-04-11 20:39:13 +02:00
Anton Khirnov
1565cbc65c
lavfi: make avfilter_free() remove the filter from its graph.
2013-04-11 20:38:48 +02:00
Anton Khirnov
111367263a
lavfi: add AVFilterContext.graph.
...
It will be useful in the following commits.
2013-04-11 20:38:23 +02:00
Anton Khirnov
c2c9801bc9
lavfi: deprecate avfilter_graph_add_filter().
...
Since this function adds a standalone filter to a filter graph and we do
not support creating such filters, there is no reason for this function
to exist.
2013-04-11 20:36:42 +02:00
Anton Khirnov
bc1a985ba0
lavfi: replace avfilter_open() with avfilter_graph_alloc_filter().
...
Since we do not support "standalone" filters not attached to an
AVFilterGraph, we should not have a public function to create such
filters. In addition that function is horribly named, the action it does
cannot be possibly described as "opening" a filter.
2013-04-11 20:34:14 +02:00
Anton Khirnov
38f0c0781a
lavfi: merge avfiltergraph.h into avfilter.h
...
We do not support using filters without AVFilterGraph in practice
anyway, so there is no point in pretending we do.
2013-04-11 20:33:33 +02:00
Anton Khirnov
4a37d4b3f8
lavfi: add const to the pads parameter of avfilter_pad_get_name/type
2013-04-11 20:33:23 +02:00
Anton Khirnov
91d2efa7d6
lavfi: add const to AVFilterContext.filter.
...
lavfi should never modify the filter through that pointer.
2013-04-11 20:32:39 +02:00
Michael Niedermayer
44d4488301
Merge commit '8114c101607843a86960bd3e0e9c40487dc2a961'
...
* commit '8114c101607843a86960bd3e0e9c40487dc2a961':
lavfi: add avfilter_get_class().
Conflicts:
libavfilter/avfilter.h
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-11 10:59:06 +02:00
Michael Niedermayer
828044aca2
Merge commit '4fa1f52e33b70029e2b621852f3af7c1ef9aecff'
...
* commit '4fa1f52e33b70029e2b621852f3af7c1ef9aecff':
af_resample: switch to an AVOptions-based system.
Conflicts:
libavfilter/avfilter.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-10 13:30:17 +02:00
Michael Niedermayer
0594ef0dea
Merge commit 'b439c992c23f3e0f3832fffd2a34a664b236c525'
...
* commit 'b439c992c23f3e0f3832fffd2a34a664b236c525':
lavfi: switch to an AVOptions-based system.
dfa: implement missing TDLT coding method
Conflicts:
libavcodec/dfa.c
libavfilter/avfilter.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-04-10 12:41:06 +02:00
Anton Khirnov
8114c10160
lavfi: add avfilter_get_class().
...
Useful for examining options, the same as the corresponding functions
for the other libs.
2013-04-09 19:13:19 +02:00
Anton Khirnov
c43a7ecad9
lavfi: remove now unused args parameter from AVFilter.init
2013-04-09 19:12:38 +02:00
Anton Khirnov
4fa1f52e33
af_resample: switch to an AVOptions-based system.
2013-04-09 18:45:50 +02:00
Anton Khirnov
b439c992c2
lavfi: switch to an AVOptions-based system.
2013-04-09 18:45:37 +02:00
Nicolas George
79d8cfacf0
lavfi: loop on request_frame if necessary.
...
Some filters need several input frames before producing output.
For these filter, it becomes simpler to return 0 in
request_frame() and let the framework call it again until
output has been produced.
2013-04-03 17:33:27 +02:00
Nicolas George
befbcc374d
lavfi: add common code to handle options parsing.
2013-03-20 21:13:56 +01:00
Michael Niedermayer
a05a44e205
Merge commit '7e350379f87e7f74420b4813170fe808e2313911'
...
* commit '7e350379f87e7f74420b4813170fe808e2313911':
lavfi: switch to AVFrame.
Conflicts:
doc/filters.texi
libavfilter/af_ashowinfo.c
libavfilter/audio.c
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/buffersink.c
libavfilter/buffersrc.c
libavfilter/buffersrc.h
libavfilter/f_select.c
libavfilter/f_setpts.c
libavfilter/fifo.c
libavfilter/split.c
libavfilter/src_movie.c
libavfilter/version.h
libavfilter/vf_aspect.c
libavfilter/vf_bbox.c
libavfilter/vf_blackframe.c
libavfilter/vf_delogo.c
libavfilter/vf_drawbox.c
libavfilter/vf_drawtext.c
libavfilter/vf_fade.c
libavfilter/vf_fieldorder.c
libavfilter/vf_fps.c
libavfilter/vf_frei0r.c
libavfilter/vf_gradfun.c
libavfilter/vf_hqdn3d.c
libavfilter/vf_lut.c
libavfilter/vf_overlay.c
libavfilter/vf_pad.c
libavfilter/vf_scale.c
libavfilter/vf_showinfo.c
libavfilter/vf_transpose.c
libavfilter/vf_vflip.c
libavfilter/vf_yadif.c
libavfilter/video.c
libavfilter/vsrc_testsrc.c
libavfilter/yadif.h
Following are notes about the merge authorship and various technical details.
Michael Niedermayer:
* Main merge operation, notably avfilter.c and video.c
* Switch to AVFrame:
- afade
- anullsrc
- apad
- aresample
- blackframe
- deshake
- idet
- il
- mandelbrot
- mptestsrc
- noise
- setfield
- smartblur
- tinterlace
* various merge changes and fixes in:
- ashowinfo
- blackdetect
- field
- fps
- select
- testsrc
- yadif
Nicolas George:
* Switch to AVFrame:
- make rawdec work with refcounted frames. Adapted from commit
759001c534 by Anton Khirnov.
Also, fix the use of || instead of | in a flags check.
- make buffer sink and src, audio and video work all together
Clément Bœsch:
* Switch to AVFrame:
- aevalsrc
- alphaextract
- blend
- cellauto
- colormatrix
- concat
- earwax
- ebur128
- edgedetect
- geq
- histeq
- histogram
- hue
- kerndeint
- life
- movie
- mp (with the help of Michael)
- overlay
- pad
- pan
- pp
- pp
- removelogo
- sendcmd
- showspectrum
- showwaves
- silencedetect
- stereo3d
- subtitles
- super2xsai
- swapuv
- thumbnail
- tile
Hendrik Leppkes:
* Switch to AVFrame:
- aconvert
- amerge
- asetnsamples
- atempo
- biquads
Matthieu Bouron:
* Switch to AVFrame
- alphamerge
- decimate
- volumedetect
Stefano Sabatini:
* Switch to AVFrame:
- astreamsync
- flite
- framestep
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
Signed-off-by: Nicolas George <nicolas.george@normalesup.org >
Signed-off-by: Clément Bœsch <ubitux@gmail.com >
Signed-off-by: Hendrik Leppkes <h.leppkes@gmail.com >
Signed-off-by: Matthieu Bouron <matthieu.bouron@gmail.com >
Signed-off-by: Stefano Sabatini <stefasab@gmail.com >
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2013-03-10 01:40:35 +01:00
Anton Khirnov
7e350379f8
lavfi: switch to AVFrame.
...
Deprecate AVFilterBuffer/AVFilterBufferRef and everything related to it
and use AVFrame instead.
2013-03-08 07:37:18 +01:00
Clément Bœsch
aaf59766b9
lavfi/avfilter: remove now unused {src,cur,out}_buf.
...
This was supposed to be removed in 565e4993 , but it was delayed due to
the port of the remaining filters. These buffer ref pointers are not
used anymore, thus dropped.
2013-01-06 04:14:56 +01:00
Nicolas George
2eb2e1798e
lavfi: add avfilter_get_audio_buffer_ref_from_arrays_channels.
...
It is the same as avfilter_get_audio_buffer_ref_from_arrays
except it has a "channels" and the channel layout can be 0.
2013-01-01 02:01:28 +01:00
Nicolas George
34de47aa35
lavfi: add an accessor for ref->audio->channels.
2012-12-20 13:03:41 +01:00
Nicolas George
238edd2fe3
lavfi: add a channels field to AVFilterLink.
...
Also: fix af_pan and af_aresample, that forgot to update
audio->channels.
2012-12-20 13:03:41 +01:00
Stefano Sabatini
8f44170d30
lavfi/avfilter.h: clarify doxy for AVFilterLink.out_buf
2012-12-15 13:51:24 +01:00
Clément Bœsch
18d9398143
doxy: add ref for lavfi, lpp and lsws.
2012-12-11 02:13:43 +01:00
Anton Khirnov
9178235ffb
avfilter: mark start_frame/end_frame/draw_slice as deprecated
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2012-11-29 02:30:11 +01:00
Michael Niedermayer
8227a0b7df
libavfilter: update doxy for filter_frame
...
Based on patch by Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2012-11-28 16:43:34 +01:00
Michael Niedermayer
cd7febd33f
lavfi: replace filter_samples by filter_frame
...
Based on patch by Anton Khirnov
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2012-11-28 16:43:34 +01:00
Anton Khirnov
565e4993c6
lavfi: merge start_frame/draw_slice/end_frame
...
Any alleged performance benefits gained from the split are purely
mythological and do not justify added code complexity.
2012-11-28 08:50:19 +01:00
Stefano Sabatini
7945665200
lavfi: store and propagate number of channels information in audio buffer properties
...
The channels field is required since the channel layout is not always
available.
2012-11-13 12:15:27 +01:00
Michael Niedermayer
03b078721c
Merge commit '97bf7c03b1338a867da52c159a2afecbdedcfa88'
...
* commit '97bf7c03b1338a867da52c159a2afecbdedcfa88':
doc: git-howto: Leave reviewers time to react before pushing patches
Include libavutil/channel_layout.h instead of libavutil/audioconvert.h
lavu: rename audioconvert.* to channel_layout.* and deprecate audioconvert.h
Conflicts:
doc/APIchanges
doc/examples/decoding_encoding.c
doc/git-howto.texi
ffmpeg_filter.c
libavcodec/flacdec.c
libavcodec/imc.c
libavcodec/mpegaudiodec.c
libavcodec/utils.c
libavfilter/asrc_anullsrc.c
libavfilter/audio.c
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/avfiltergraph.c
libavfilter/buffer.c
libavutil/Makefile
libavutil/audioconvert.h
libavutil/channel_layout.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2012-11-12 11:32:11 +01:00
Justin Ruggles
a903f8f087
Include libavutil/channel_layout.h instead of libavutil/audioconvert.h
...
Also reorder some other #include when applicable.
2012-11-11 13:35:12 -05:00
Clément Bœsch
54a48d2f04
lavfi: fix references to avfilter_* functions that don't exist anymore.
2012-10-31 20:54:59 +01:00
Michael Niedermayer
95d07f33dc
libavfilter: include needed header for AVDictionary
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2012-10-24 22:24:54 +02:00
Clément Bœsch
6fb2fd895e
lavc: add lavfi metadata support.
...
This commit introduces a new AVPacket side data type:
AV_PKT_DATA_STRINGS_METADATA. Its main goal is to provide a way to
transmit the metadata from the AVFilterBufferRef up to the AVFrame. This
is at the moment "only" useful for lavfi input from libavdevice:
lavd/lavfi only outputs packets, and the metadata from the buffer ref
kept in its context needs to be transmitted from the packet to the frame
by the decoders. The buffer ref can be destroyed at any time (along with
the metadata), and a duplication of the AVPacket needs to duplicate the
metadata as well, so the choice of using the side data to store them was
selected.
Making sure lavd/lavfi raises the metadata is useful to allow tools like
ffprobe to access the filters metadata (it is at the moment the only
way); ffprobe will now automatically show the AVFrame metadata in any
customizable output format for users. API users will also be able to
access the AVFrame->metadata pointer the same way ffprobe does
(av_frame_get_metadata).
All the changes are done in this single commit to avoid some memory
leaks: for instances, the changes in lavfi/avcodec.c are meant to
duplicate the metadata from the buffer ref into the AVFrame. Unless we
have an internal way of freeing the AVFrame->metadata automatically, it
will leak in most of the user apps. To fix this problem, we introduce
AVCodecContext->metadata and link avctx->metadata to the current
frame->metadata and free it at each decode frame call (and in the codec
closing callback for the last one). But doing this also means to update
the way the tiff decoder already handles the AVFrame->metadata (it's the
only one decoder with frame metadata at the moment), by making sure it
is not trying to free a pointer already freed by the lavc internals.
The lavfi/avcodec.c buffer ref code is based on an old Thomas Kühnel
work, the rest of the code belongs to the commit author.
Signed-off-by: Thomas Kühnel <kuehnelth@googlemail.com >
Signed-off-by: Clément Bœsch <ubitux@gmail.com >
2012-10-21 17:29:10 +02:00
Michael Niedermayer
ac627b3d38
Merge commit '716d413c13981da15323c7a3821860536eefdbbb'
...
* commit '716d413c13981da15323c7a3821860536eefdbbb':
Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat
Conflicts:
doc/examples/muxing.c
ffmpeg.h
ffmpeg_filter.c
ffmpeg_opt.c
ffplay.c
ffprobe.c
libavcodec/8bps.c
libavcodec/aasc.c
libavcodec/aura.c
libavcodec/avcodec.h
libavcodec/avs.c
libavcodec/bfi.c
libavcodec/bmp.c
libavcodec/bmpenc.c
libavcodec/c93.c
libavcodec/cscd.c
libavcodec/cyuv.c
libavcodec/dpx.c
libavcodec/dpxenc.c
libavcodec/eatgv.c
libavcodec/escape124.c
libavcodec/ffv1.c
libavcodec/flashsv.c
libavcodec/fraps.c
libavcodec/h264.c
libavcodec/huffyuv.c
libavcodec/iff.c
libavcodec/imgconvert.c
libavcodec/indeo3.c
libavcodec/kmvc.c
libavcodec/libopenjpegdec.c
libavcodec/libopenjpegenc.c
libavcodec/libx264.c
libavcodec/ljpegenc.c
libavcodec/mjpegdec.c
libavcodec/mjpegenc.c
libavcodec/motionpixels.c
libavcodec/mpeg12.c
libavcodec/mpeg12enc.c
libavcodec/mpeg4videodec.c
libavcodec/mpegvideo_enc.c
libavcodec/pamenc.c
libavcodec/pcxenc.c
libavcodec/pgssubdec.c
libavcodec/pngdec.c
libavcodec/pngenc.c
libavcodec/pnm.c
libavcodec/pnmdec.c
libavcodec/pnmenc.c
libavcodec/ptx.c
libavcodec/qdrw.c
libavcodec/qpeg.c
libavcodec/qtrleenc.c
libavcodec/raw.c
libavcodec/rawdec.c
libavcodec/rl2.c
libavcodec/sgidec.c
libavcodec/sgienc.c
libavcodec/snowdec.c
libavcodec/snowenc.c
libavcodec/sunrast.c
libavcodec/targa.c
libavcodec/targaenc.c
libavcodec/tiff.c
libavcodec/tiffenc.c
libavcodec/tmv.c
libavcodec/truemotion2.c
libavcodec/utils.c
libavcodec/vb.c
libavcodec/vp3.c
libavcodec/wnv1.c
libavcodec/xl.c
libavcodec/xwddec.c
libavcodec/xwdenc.c
libavcodec/yop.c
libavdevice/v4l2.c
libavdevice/x11grab.c
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/buffersrc.c
libavfilter/drawutils.c
libavfilter/formats.c
libavfilter/src_movie.c
libavfilter/vf_ass.c
libavfilter/vf_drawtext.c
libavfilter/vf_fade.c
libavfilter/vf_format.c
libavfilter/vf_hflip.c
libavfilter/vf_lut.c
libavfilter/vf_overlay.c
libavfilter/vf_pad.c
libavfilter/vf_scale.c
libavfilter/vf_transpose.c
libavfilter/vf_yadif.c
libavfilter/video.c
libavfilter/vsrc_testsrc.c
libavformat/movenc.c
libavformat/mxf.h
libavformat/utils.c
libavformat/yuv4mpeg.c
libavutil/imgutils.c
libavutil/pixdesc.c
libswscale/input.c
libswscale/output.c
libswscale/swscale_internal.h
libswscale/swscale_unscaled.c
libswscale/utils.c
libswscale/x86/swscale_template.c
libswscale/x86/yuv2rgb.c
libswscale/x86/yuv2rgb_template.c
libswscale/yuv2rgb.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2012-10-08 21:06:57 +02:00
Anton Khirnov
716d413c13
Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat
2012-10-08 07:13:26 +02:00
Stefano Sabatini
a4cb0af945
lavfi: drop deprecated and pointless avfilter_default_end_frame() function
...
Fix warning when compiling boxblur.
While this is technically a major API break, practically there will be no
one using that function since the filtering API is mostly private, so
that function alone is not usable.
2012-09-09 10:57:28 +02:00
Michael Niedermayer
91141f2a13
lavfi: add qp_table_size
...
This avoid recalculating it and in case w/h changed avoids crashes.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2012-09-07 13:00:47 +02:00
Michael Niedermayer
c9a0f9bf3c
libavfilter: pass QP table through the filter chain
...
Any volunteers to port the pp and spp filters from libmpcodec?
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2012-09-07 03:17:28 +02:00
Nicolas George
beeba9161a
lavfi: add a closed field to AVFilerLink.
...
It will help forward errors and maintain consistency.
2012-08-22 19:04:30 +02:00