Commit Graph

119 Commits

Author SHA1 Message Date
S.N. Hemanth Meenakshisundaram
bdab614be8 Generalize pixel format enum fields to int formats.
This is needed to make the libavfilter framework work with audio
filters.

In particular add a type field to AVFilterLink, change the field types:
enum PixelFormat format   -> int format   in AVFilterBuffer
enum PixelFormat *formats -> int *formats in AVFilterFormats
enum PixelFormat *format  -> int format   in AVFilterLink

and change the function signatures:
AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); ->
AVFilterFormats *avfilter_make_format_list(const int *fmts);

int avfilter_add_colorspace(AVFilterFormats **avff, enum PixelFormat pix_fmt); ->
int avfilter_add_format(AVFilterFormats **avff, int fmt);

AVFilterFormats *avfilter_all_colorspaces(void); ->
AVFilterFormats *avfilter_all_formats(enum AVMediaType type);

This change breaks libavfilter API/ABI.

Patch by S.N. Hemanth Meenakshisundaram |smeenaks|ucsd|edu|.

Originally committed as revision 24424 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-22 11:12:47 +00:00
Stefano Sabatini
9f0e31d29a Make avfilter.c dprintf* functions internal and declare them in an
internal.h header, so they can be easily used from other files.

Originally committed as revision 24319 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-18 22:37:39 +00:00
S.N. Hemanth Meenakshisundaram
ff5f1be0fe Move the AV_PERM_* flags definition outside the AVFilterPicRef
definition.

This way it is easier to reference them in other structures, for
example in the pending AVFilterSamplesRef struct.

Patch by S.N. Hemanth Meenakshisundaram smeenaks AT ucsd DOT edu.

Originally committed as revision 24294 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-17 18:55:56 +00:00
Stefano Sabatini
32d7bcd4b1 Clarify AVFilterBuffer documentation, make it clear that it is not
necessarily video-related.

Originally committed as revision 24293 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-17 18:27:11 +00:00
S.N. Hemanth Meenakshisundaram
b5c582fa9d Remove AVFilterBuffer w and h fields.
These fields are never used, and they do not seem to belong to
AVFilterBuffer anymore, now that it is now a media-independent
structure and these fields are video-related.

Patch by S.N. Hemanth Meenakshisundaram smeenaks ! ucsd ! edu.

Originally committed as revision 24291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-17 18:13:17 +00:00
S.N. Hemanth Meenakshisundaram
f0d77b2085 Rename AVFilterPic to AVFilterBuffer.
The struct is going to be used for audio data as well, so the new name
is less misleading.

Patch by S.N. Hemanth Meenakshisundaram smeenaks AT ucsd DOT edu.

Originally committed as revision 24284 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-17 10:44:14 +00:00
Stefano Sabatini
23ccf3c7a7 Add color source.
Originally committed as revision 24282 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-17 10:14:52 +00:00
Stefano Sabatini
ce2e4ae35a Add pixdesctest filter and corresponding test.
Originally committed as revision 24092 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 18:24:55 +00:00
Stefano Sabatini
4d508e4de5 Implement avfilter_copy_picref_props().
Originally committed as revision 24091 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-07 18:23:54 +00:00
Diego Biurrun
9a58234fea Fix misspelled parameter names in Doxygen documentation.
This fixes one Doxygen warning each.

Originally committed as revision 23970 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 10:49:29 +00:00
Måns Rullgård
49bd8e4b84 Fix grammar errors in documentation
Originally committed as revision 23904 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-30 15:38:06 +00:00
Stefano Sabatini
6951515cbf Bump micro and add APIchanges entry after av_parse_color() extension.
Originally committed as revision 23838 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-27 22:48:12 +00:00
Stefano Sabatini
b6bc205155 Bump lavfi minor after the addition of the fields interlaced and
top_field_first in AVFilterPicRef, done in r23044.

Originally committed as revision 23066 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-09 20:02:40 +00:00
Michael Niedermayer
efdc74ef19 Try to keep track of interlaced and top field first.
Originally committed as revision 23044 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-05-07 10:02:59 +00:00
Bobby Bingham
ac1c95645a Bump libavfilter minor version and Changelog for unsharp filter
Originally committed as revision 22830 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-10 20:34:44 +00:00
Stefano Sabatini
72415b2adb Define AVMediaType enum, and use it instead of enum CodecType, which
is deprecated and will be dropped at the next major bump.

Originally committed as revision 22735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-30 23:30:55 +00:00
Bobby Bingham
91d1c741bf Create a set of null callback functions.
These are useful for filters which don't modify the image data.

Originally committed as revision 22594 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-18 23:12:48 +00:00
Stefano Sabatini
8955a324f4 Bump libavfilter minor version and add APIchanges entry after the
addition of the AVFilterPicRef.pos field.

Originally committed as revision 22508 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 11:41:15 +00:00
Stefano Sabatini
5bb5c1dc86 Add AVFilterPicRef.pos field and make libavfilter propagate stream
byte position information, as stored in the pkt.pos, through the
filterchain.

Note that the pos field is added *non* at the end of the
AVFilterPicRef struct, thus breaking ABI compatibility, which is
allowed as the API is still considered non-stable.

Originally committed as revision 22506 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-13 11:27:05 +00:00
Stefano Sabatini
006aa1a4c2 Implement null video sink.
Originally committed as revision 21242 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 11:05:36 +00:00
Stefano Sabatini
dd08b83c87 Implement null video source.
Originally committed as revision 21240 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 10:43:53 +00:00
Stefano Sabatini
3fb8e77a8d Add a log context to avfilter_graph_config_links().
Originally committed as revision 21121 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-10 13:39:56 +00:00
Stefano Sabatini
063e769273 Make avfilter_formats_unref(AVFilterFormats **ref) handle the case
when *ref is NULL.

Originally committed as revision 21077 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 22:59:22 +00:00
Stefano Sabatini
fe59258516 Use the @return doxy command, and extend documentation for the return
value of AVFilter.query_formats.

Originally committed as revision 21076 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 22:52:46 +00:00
Stefano Sabatini
c4d2e41ce4 Avoid the use of the modal auxiliary "should" in the
AVFilter.query_formats doxy.
The doxy expresses what a function does, not what it should do.

Originally committed as revision 21075 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 22:51:06 +00:00
Stefano Sabatini
516841ef63 Fix doxy, use third person.
Originally committed as revision 21073 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-07 22:44:32 +00:00
Stefano Sabatini
c1d662fd88 Change avfilter_add_colorspace() to make it accept **avff rather than
*avff, so that an AVFilterFormats struct is created and returned by
the function if *avff is NULL.

Make the function use more convenient.

Originally committed as revision 21035 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-06 16:19:13 +00:00
Stefano Sabatini
4fd1f1876a Implement avfilter_add_colorspace().
Originally committed as revision 21007 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-03 22:26:59 +00:00
Stefano Sabatini
4160069067 Prefer "*FUNC_NAME(" over "* FUNC_NAME(" for XXX_configuration() and
XXX_license() functions, consistent with the rest of FFmpeg.

Originally committed as revision 21005 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-03 14:31:25 +00:00
Stefano Sabatini
a13a543797 Add a slice_dir parameter to avfilter_draw_slice().
Avoid the need to implement slice direction detection code, thus
reducing code duplication.

See the thread:
"[FFmpeg-devel] [PATCH] Add a slice_dir parameter to avfilter_start_frame()".

Originally committed as revision 20734 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-04 23:26:13 +00:00
Stefano Sabatini
bd2837387c Document slice ordering assumption required by avfilter_draw_slice().
The assumption depends on the corresponding assumption done by
sws_scale() and by the scale filter.

Originally committed as revision 20655 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-29 10:42:37 +00:00
Stefano Sabatini
4cc3f6afe4 Remove AVFilter.next field, since it is not used and it is not going
to be used since the implementation of the new filter registration
system.

Originally committed as revision 20611 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-25 23:24:09 +00:00
Stefano Sabatini
1433c4abf2 Implement avfilter_next().
Originally committed as revision 20607 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-24 23:58:48 +00:00
Stefano Sabatini
86a60fa1ac Implement a new registration system for filters.
Create a new static array containing pointers to the AVFilter
definitions, so that the non-constant next filter in the AVFilter
struct is not anymore required and the AVFilter definitions may be
stored in shareable memory.

Also change the signature for avfilter_register(), make it return an
int since it may fail if there is not enough space in the static array
for the registered filters.

Originally committed as revision 20605 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-24 23:47:33 +00:00
Diego Biurrun
c173693698 Add functions to return library license and library configuration.
Originally committed as revision 20547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-18 17:15:17 +00:00
Diego Biurrun
1f20782c04 Add missing #includes for avutil.h, required for the AV_VERSION* macros.
Originally committed as revision 20544 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-16 18:39:26 +00:00
Stefano Sabatini
c3eabb7d2f Add scale filter.
Originally committed as revision 20519 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-11 23:50:21 +00:00
Stefano Sabatini
bc37ec923d Add slicify video filter.
Originally committed as revision 20445 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-03 22:41:38 +00:00
Stefano Sabatini
da23d42476 Make avfilter_get_video_buffer() use
avfilter_default_get_video_buffer() if the get_video_buffer() callback
is not defined in a filter.

Libavfilter filters author have to explicitely define the
get_video_buffer() callback if they want the buffer to be requested to
the filter following in the filterchain.

See the thread:
"[FFmpeg-devel] [PATCH] Make avfilter_get_video_buffer() use
default_get_video_buffer if callback not defined".

Originally committed as revision 20444 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-03 22:15:52 +00:00
Stefano Sabatini
2be414c8de Fix doxies, use third person and phrase-ending dots.
Originally committed as revision 20391 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-27 22:12:20 +00:00
Stefano Sabatini
fcbed3c735 Add format and noformat filters.
Originally committed as revision 20390 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-27 21:40:43 +00:00
Stefano Sabatini
243110f968 Add a field 'next' to AVFilter.
Simplify the registration and iteration of all the registered filters,
consistent with what is done with formats / codecs.

Originally committed as revision 20385 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-27 19:42:07 +00:00
Stefano Sabatini
cccd292ae2 Move the description field of the filter from AVFilterContext to
AVFilter, where it should have had defined the first time.
+10L.

Originally committed as revision 20356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-22 23:03:25 +00:00
Stefano Sabatini
1551745c88 Add a description field to AVFilterContext.
Originally committed as revision 20354 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-22 22:46:11 +00:00
Stefano Sabatini
9abba21ad3 Cosmetics: prefer "pix_fmts" over "pix_fmt" for the name of the
argument of avfilter_make_format_list(), as the argument represents a
list of elements.

Originally committed as revision 20341 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-21 20:43:43 +00:00
Stefano Sabatini
1554fed2d6 Make avfilter_make_format_list() take in input a const argument.
Originally committed as revision 20340 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-21 20:39:05 +00:00
Stefano Sabatini
6b5dc050a2 Rename avfilter_make_format_list2() to avfilter_make_format_list().
Originally committed as revision 20302 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 23:39:54 +00:00
Stefano Sabatini
e768cb7668 Remove avfilter_make_format_list(), it has been replaced by
avfilter_make_format_list2().

Originally committed as revision 20301 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 23:35:54 +00:00
Stefano Sabatini
f6a1fa850a Implement avfilter_make_format_list2(), which is going to replace
avfilter_make_format_list().

See the thread:
"[PATCH] Implement avfilter_make_format_list2(enum PixelFormat pix_fmt, ...)".

Originally committed as revision 20299 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 23:06:52 +00:00
Stefano Sabatini
930aa45132 Use 'enum PixelFormat *' rather than 'int *' as type for the
AVFilterFormats.formats field.
Cleaner / safer.

Originally committed as revision 20274 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 09:31:57 +00:00