Commit Graph

24 Commits

Author SHA1 Message Date
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 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
Måns Rullgård 1250fcc862 avfilter: make avfilter_default_free_video_buffer() static
This function is not referenced outside this file and has no
prototype.  Feel free to flame if this is wrong.

Originally committed as revision 22314 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 03:41:19 +00:00
Stefano Sabatini 3b2142af99 Make avfilter_default_start_frame() correctly pass the aspect ratio
information to the next filter.

Originally committed as revision 22300 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-07 23:53:47 +00:00
Stefano Sabatini b5eab66e9f Make avfilter_default_start_frame() request a buffer with the same
size of the output link of the destination filter, rather than of the
size of the input link.
In particular this fixes a crash in the rotate filter.

Originally committed as revision 21238 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 10:10:14 +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 0eb4ff9e37 Make avfilter_get_video_buffer() recursive.
When called on a link with a filter whose destination pad has not a
get_video_buffer callback defined, it will call
avfilter_get_video_buffer() on the first output link of the
destination filer, rather than use avfilter_default_get_buffer(), so
the video buffer can be allocated forward in the filterchain.

Also add the w and h parameters to avfilter_get_video_buffer(), as the
minimum width and height requested by each filter in the filterchain
may change, this allows for example a memcpy-less pad filter.

This change breaks API / ABI backward compatibility.

See the thread:
"[PATCH] Implement recusive avfilter_get_video_buffer()".

Originally committed as revision 20272 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-18 08:16:18 +00:00
Stefano Sabatini 46c40e4835 Add w and h fields to AVFilterPic.
See the thread:
"[FFmpeg-devel] [PATCH] Add w,h fields to AVFilterPic".

Originally committed as revision 20189 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-07 18:50:00 +00:00
David Conrad ef516f7377 Move ALIGN macro to libavutil/common.h and use it in various places
Originally committed as revision 18898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-22 21:32:13 +00:00
Stefano Sabatini b9609848f3 Implement the avfilter_default_draw_slice() handler and use it in
avfilter_draw_slice() when the draw_slice callback is not defined in
the input pad.

Originally committed as revision 16554 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-11 22:05:48 +00:00
Diego Biurrun 245976da2a Use full path for #includes from another directory.
Originally committed as revision 13098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-09 11:56:36 +00:00
Vitor Sessak 790a03d701 Force alignment of pic->linesize
Commited in SoC by Vitor Sessak on 2008-02-15 21:05:06

Originally committed as revision 12075 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 22:00:13 +00:00
Vitor Sessak 4cf48782f8 Force linesize to be a multiple of 16
Commited in SoC by Vitor Sessak on 2008-02-10 20:51:58

Originally committed as revision 12074 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 22:00:09 +00:00
Vitor Sessak 459821c533 Rework link property configuration system.
This can now handle filters which are added to graphs out of order,
including auto-inserted scale filters.  As an added bonus, it can
now detect circular filter chains which wouldn't work anyway.

Commited in SoC by Bobby Bingham on 2007-12-24 03:22:10

Originally committed as revision 12073 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 22:00:07 +00:00
Vitor Sessak e363730c01 Rewrite colorspace negotiation.
Commited in SoC by Bobby Bingham on 2007-12-20 19:36:26

Originally committed as revision 12072 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 22:00:03 +00:00
Vitor Sessak d0e4eba57c Make an invalid use of a default callback implementation return an error.
Commited in SoC by Bobby Bingham on 2007-08-18 01:45:42

Originally committed as revision 12071 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 22:00:00 +00:00
Vitor Sessak 4f90956596 Ensure that buffers returned by the default allocator are readable, or else
they're useless for outputting.

Commited in SoC by Bobby Bingham on 2007-08-17 22:52:18

Originally committed as revision 12070 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 21:59:57 +00:00
Vitor Sessak 23274667c2 Revert braindead linked list of permissions
Commited in SoC by Bobby Bingham on 2007-08-17 22:44:03

Originally committed as revision 12069 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 21:59:50 +00:00
Vitor Sessak 4d62c9d377 Track the permissions that have been given out to each picture.
This should make it easier to know what can be done to a buffer once
it's been passed to your filter without falling back to copying it "just
to be safe".

Commited in SoC by Bobby Bingham on 2007-08-17 18:21:07

Originally committed as revision 12068 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 21:59:47 +00:00
Vitor Sessak fc0f39c222 indentation
Commited in SoC by Bobby Bingham on 2007-08-17 17:09:19

Originally committed as revision 12067 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 21:59:44 +00:00
Vitor Sessak 552c020875 Make default end_frame() implementation more useful.
Commited in SoC by Bobby Bingham on 2007-08-17 16:45:47

Originally committed as revision 12066 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 21:59:41 +00:00
Vitor Sessak 712048daf5 Allow filters to set the requirements on permissions for incoming buffers.
Commited in SoC by Bobby Bingham on 2007-08-17 16:40:26

Originally committed as revision 12065 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 21:59:38 +00:00
Vitor Sessak f66f53dac8 Separate the process of creating links between filters from that of configuring
the links.

Commited in SoC by Bobby Bingham on 2007-08-07 21:02:18

Originally committed as revision 12064 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 21:58:29 +00:00
Vitor Sessak bf4ce7a364 Move default entry point implementations to their own file.
Make them externally visible because they may be useful for filters to use.

Commited in SoC by Bobby Bingham on 2007-08-02 15:14:05

Originally committed as revision 12063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-15 21:58:25 +00:00