Commit Graph

224 Commits

Author SHA1 Message Date
Stefano Sabatini 84c0386960 Change avfilter_open() signature, from:
AVFilterContext *avfilter_open(AVFilter *filter, const char *inst_name);
to:
int avfilter_open(AVFilterContext **filter_ctx, AVFilter *filter, const char *inst_name);

This way it is possible to propagate an error code telling the reason
of the failure.

Originally committed as revision 24765 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-11 11:44:51 +00:00
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 3748b2b8e8 Fix leak in avfilter_graph_add_filter().
In case of reallocation failure the pointer to the original filter
array was lost. The correct behavior seems to just keep the old array
and count.

Originally committed as revision 22905 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-18 20:10:43 +00:00
Stefano Sabatini 22b7b23c17 Make avfilter_graph_add_filter() returns AVERROR(ENOMEM) in case of
failed reallocation, rather than just -1.

Originally committed as revision 22878 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-04-13 23:22:22 +00:00
Stefano Sabatini f37c934d20 Make query_formats() print an error message if an auto-inserted scale
filter cannot convert between input and output formats.

Originally committed as revision 21176 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-13 00:09:24 +00:00
Stefano Sabatini 9ea977210c Make query_formats() increment the scaler_count after each scaler
insertion.

Originally committed as revision 21124 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-10 14:23:19 +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 4ec42240ca Implement avfilter_graph_config_links().
Originally committed as revision 19066 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-31 16:30:12 +00:00
Stefano Sabatini d7dbe55823 Rename avfilter_destroy_graph() to avfilter_graph_destroy(), for better
consistency with the rest of the API.

Originally committed as revision 17623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-26 22:02:09 +00:00
Stefano Sabatini 39c07b8e44 Implement in AVFilterGraph the scale_sws_opts field, and pass its
value in the args for the auto-inserted scale filters.

Originally committed as revision 17547 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-23 23:45:21 +00:00
Stefano Sabatini 822005ed45 Implement avfilter_graph_check_validity().
Originally committed as revision 16809 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-26 20:21:25 +00:00
Vitor Sessak 4e4a3e2314 Handle av_realloc() failure
Commited in SoC by Vitor Sessak on 2008-04-04 15:35:38

Originally committed as revision 12754 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:47 +00:00
Vitor Sessak 51bf654d79 Use sizeof(var) instead of sizeof(type)
Commited in SoC by Vitor Sessak on 2008-04-03 19:53:18

Originally committed as revision 12753 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:45 +00:00
Vitor Sessak a6f88fbc8f Give a more meaningful instance name to auto-inserted scaler
Commited in SoC by Vitor Sessak on 2008-04-03 16:51:39

Originally committed as revision 12752 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:42 +00:00
Vitor Sessak 779cc07aa2 Merge two ifs
Commited in SoC by Vitor Sessak on 2008-04-03 16:44:27

Originally committed as revision 12751 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:40 +00:00
Vitor Sessak e1a43a4146 Remove unused check
Commited in SoC by Vitor Sessak on 2008-04-03 16:38:51

Originally committed as revision 12750 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:38 +00:00
Vitor Sessak a10477173a Cosmetical: alignment
Commited in SoC by Vitor Sessak on 2008-04-03 16:36:13

Originally committed as revision 12749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:35 +00:00
Vitor Sessak 2ad720679c Remove some unwanted todos
Commited in SoC by Vitor Sessak on 2008-04-03 16:32:37

Originally committed as revision 12748 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:32 +00:00
Vitor Sessak d2027baac5 I should not have merged the graph parser with the graph
framework. Split it.

Commited in SoC by Vitor Sessak on 2008-04-03 16:29:07

Originally committed as revision 12746 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:27 +00:00
Vitor Sessak 966b8f2dcb Replace consume_char() function by *(*buf)++
Commited in SoC by Vitor Sessak on 2008-03-30 15:46:38

Originally committed as revision 12745 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:23 +00:00
Vitor Sessak 4f409baa06 Add backslash '\' support to the parser
Commited in SoC by Vitor Sessak on 2008-03-29 16:26:47

Originally committed as revision 12744 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:20 +00:00
Vitor Sessak 398f12970f Remove AVFilterGraphDesc struct.
Now the parser link the filters from the graph directly
with avfilter_link().

Commited in SoC by Vitor Sessak on 2008-03-29 15:12:47

Originally committed as revision 12743 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:17 +00:00
Vitor Sessak c4913b812d Rename uninit() to avfilter_destroy_graph() and make it non-static
Commited in SoC by Vitor Sessak on 2008-03-27 19:34:24

Originally committed as revision 12742 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:14 +00:00
Vitor Sessak d66e946b12 Rename functions now static
Commited in SoC by Vitor Sessak on 2008-03-26 21:06:01

Originally committed as revision 12741 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:11 +00:00
Vitor Sessak de0e3e81d3 Move funtion to avoid forward declaration
Commited in SoC by Vitor Sessak on 2008-03-26 20:57:17

Originally committed as revision 12740 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:08 +00:00
Vitor Sessak 0c3177737b Move mess (to be removed) to where it is actually used.
Commited in SoC by Vitor Sessak on 2008-03-26 20:56:05

Originally committed as revision 12739 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:06 +00:00
Vitor Sessak 87506daafd Remove usage of AVFilterGraphDesc outside avfiltergraph.c
Commited in SoC by Vitor Sessak on 2008-03-26 20:51:24

Originally committed as revision 12738 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:09:02 +00:00
Vitor Sessak 58f472d10f Simplify graph_load_from_desc3()
Commited in SoC by Vitor Sessak on 2008-03-26 20:37:43

Originally committed as revision 12737 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:59 +00:00
Vitor Sessak 9f39bb37e4 Rename variable GraphContext -> AVFilterGraph
Commited in SoC by Vitor Sessak on 2008-03-26 20:31:53

Originally committed as revision 12736 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:56 +00:00
Vitor Sessak 5c2ff9fd46 Merge avfiltergraphdesc.c in avfiltergraph.c
Commited in SoC by Vitor Sessak on 2008-03-24 20:46:50

Originally committed as revision 12735 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:52 +00:00
Vitor Sessak f2ee8083c8 Remove avfilter_vf_graph
Commited in SoC by Vitor Sessak on 2008-03-24 20:13:01

Originally committed as revision 12734 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:49 +00:00
Vitor Sessak 4160400d04 Remove code made unused by the two last patches
Commited in SoC by Vitor Sessak on 2008-03-24 19:29:15

Originally committed as revision 12732 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:44 +00:00
Vitor Sessak 45a09319b2 Split graph_load_from_dest() to have a version independent of avfilter_vf_graph
Commited in SoC by Vitor Sessak on 2008-03-24 19:19:38

Originally committed as revision 12731 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:40 +00:00
Vitor Sessak 789210fa22 Almost from scratch rewrite of filter parser.
Functional as is, but still work-in-progress in the
sense that some things need to be fixed before sending
it as a patch to SVN.

Commited in SoC by Vitor Sessak on 2008-03-20 21:48:30

Originally committed as revision 12729 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:34 +00:00
Vitor Sessak 3ec394ea82 Remove ugly forward declaration
Commited in SoC by Vitor Sessak on 2008-02-24 11:41:22

Originally committed as revision 12728 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:31 +00:00
Vitor Sessak de065016f0 Fix doxy comment
Commited in SoC by Vitor Sessak on 2008-02-24 11:30:41

Originally committed as revision 12727 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:28 +00:00
Vitor Sessak 177ff26052 Spelling and puctuation
Commited in SoC by Vitor Sessak on 2008-02-16 17:52:49

Originally committed as revision 12726 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:26 +00:00
Vitor Sessak 4dae572fff Remove header now made useless
Commited in SoC by Vitor Sessak on 2008-02-12 20:59:51

Originally committed as revision 12723 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:16 +00:00
Vitor Sessak 9958f07a81 Remove author field
Suggested by Baptiste Coudurier

Commited in SoC by Vitor Sessak on 2008-02-11 19:56:27

Originally committed as revision 12722 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:13 +00:00
Vitor Sessak 2b05243960 Use CodecType for pad type
Commited in SoC by Vitor Sessak on 2008-02-10 20:41:57

Originally committed as revision 12721 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:10 +00:00
Vitor Sessak d42927893b Header inclusion redux
Commited in SoC by Vitor Sessak on 2008-02-10 08:46:50

Originally committed as revision 12720 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:07 +00:00
Vitor Sessak ec8398a322 Nits: more punctuation and capitalization
Commited in SoC by Vitor Sessak on 2008-02-09 20:02:29

Originally committed as revision 12719 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:05 +00:00
Vitor Sessak affadb5b99 Implement poll_frame() method. Fix ffmpeg.c bug with
vf_fps filter.

Commited in SoC by Vitor Sessak on 2008-02-06 19:55:36

Originally committed as revision 12718 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:08:02 +00:00
Vitor Sessak 095ae1bcb7 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 12717 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:59 +00:00
Vitor Sessak f3f42a3c51 Use separate fake filters for exporting inputs and outputs from filter graphs.
This makes the code a little less confusing, and is needed for the patch to
improve the link configuration process, to be committed next.

Commited in SoC by Bobby Bingham on 2007-12-24 02:53:56

Originally committed as revision 12716 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:56 +00:00
Vitor Sessak d22ebb1b98 Use a filter graph description for creating simple chain graphs so we
can reuse the same graph creation code.

Commited in SoC by Bobby Bingham on 2007-12-22 19:13:04

Originally committed as revision 12715 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:54 +00:00
Vitor Sessak 1df675bf44 Use av_log(ctx, ...) instead of av_log(NULL, ...)
Commited in SoC by Vitor Sessak on 2007-12-21 11:10:29

Originally committed as revision 12713 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:47 +00:00
Vitor Sessak de5985b69f 10l
Commited in SoC by Bobby Bingham on 2007-12-20 20:21:19

Originally committed as revision 12712 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:44 +00:00
Vitor Sessak 7b4708780c Rewrite colorspace negotiation.
Commited in SoC by Bobby Bingham on 2007-12-20 19:36:26

Originally committed as revision 12711 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:41 +00:00
Vitor Sessak 8af6261c27 Fix a small memory leak
Commited in SoC by Bobby Bingham on 2007-12-20 19:30:34

Originally committed as revision 12710 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:39 +00:00
Vitor Sessak 54d7fcc120 initialize filter graphs completely even if there is no list of filters
given to initially load.

Commited in SoC by Bobby Bingham on 2007-12-20 16:50:45

Originally committed as revision 12709 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:37 +00:00
Vitor Sessak 5a7414f3ca Handle failure properly
Commited in SoC by Vitor Sessak on 2007-11-29 19:35:17

Originally committed as revision 12708 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:34 +00:00
Vitor Sessak 6c66596eed Remove useless empty functions
Commited in SoC by Vitor Sessak on 2007-11-04 17:20:17

Originally committed as revision 12707 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:31 +00:00
Vitor Sessak 9eb36c05df Silence warning caused by my last commit
Commited in SoC by Vitor Sessak on 2007-10-30 21:15:19

Originally committed as revision 12706 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:29 +00:00
Vitor Sessak 5a1dacda9d Minor simplification
Commited in SoC by Vitor Sessak on 2007-10-30 21:11:34

Originally committed as revision 12705 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:07:17 +00:00
Vitor Sessak 6ea1446466 Prefix names of filter structs
Commited in SoC by Bobby Bingham on 2007-08-18 18:17:30

Originally committed as revision 12704 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:54 +00:00
Vitor Sessak d1633ac695 Rename avfilter_create to avfilter_open and remove the wrapper function
avfilter_create_by_name.

Commited in SoC by Bobby Bingham on 2007-08-17 23:39:55

Originally committed as revision 12703 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:47 +00:00
Vitor Sessak 66d9e9be50 Doxygenize some comments
Commited in SoC by Bobby Bingham on 2007-08-17 22:59:59

Originally committed as revision 12702 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:45 +00:00
Vitor Sessak 5ded633e07 Remove the data parameter from draw_slice(). It's unneeded and often more
work than it's worth.

Commited in SoC by Bobby Bingham on 2007-08-17 14:39:11

Originally committed as revision 12701 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:42 +00:00
Vitor Sessak 57d4a1575c Allow creation of filter graphs from a graph description structure which
can be created programmatically or loaded from a file.

Commited in SoC by Bobby Bingham on 2007-08-14 22:27:05

Originally committed as revision 12700 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:37 +00:00
Vitor Sessak 1d2067e2c7 Let request_frame() indicate success or failure
Commited in SoC by Bobby Bingham on 2007-08-11 17:42:36

Originally committed as revision 12699 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:34 +00:00
Vitor Sessak 81c25293c8 Need to copy over colorspace property too
Commited in SoC by Bobby Bingham on 2007-08-08 05:39:40

Originally committed as revision 12698 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:31 +00:00
Vitor Sessak 7b712850d2 Fix behavior when exporting output pad with default query_formats()
Commited in SoC by Bobby Bingham on 2007-08-08 04:25:08

Originally committed as revision 12697 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:28 +00:00
Vitor Sessak 7f8fb52f06 Let the filter graph export input and output pads from the filters it contains.
Commited in SoC by Bobby Bingham on 2007-08-07 22:33:46

Originally committed as revision 12696 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:25 +00:00
Vitor Sessak 256d0e0a72 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 12695 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:22 +00:00
Vitor Sessak 1deec58ba3 Fix memory leak.
Commited in SoC by Bobby Bingham on 2007-07-31 20:11:25

Originally committed as revision 12694 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:19 +00:00
Vitor Sessak b9a7a65ab4 Make the filter graph just another normal filter.
Commited in SoC by Bobby Bingham on 2007-07-31 20:08:38

Originally committed as revision 12693 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:17 +00:00
Vitor Sessak 1ac87cc890 Allow code to pass data to filters it creates.
Commited in SoC by Bobby Bingham on 2007-07-15 16:45:50

Originally committed as revision 12692 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:13 +00:00
Vitor Sessak fc27b8081e Don't mangle the input strings. The caller may want to reuse it later.
Commited in SoC by Bobby Bingham on 2007-07-15 16:13:17

Originally committed as revision 12691 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:06:10 +00:00
Vitor Sessak 65a4bd9c9e Ensure that the filter_count member is reset to zero when emptying the graph
Commited in SoC by Bobby Bingham on 2007-07-14 23:19:22

Originally committed as revision 12690 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:05:01 +00:00
Vitor Sessak ba56640c30 Fix possible segfault
Commited in SoC by Bobby Bingham on 2007-07-14 23:16:15

Originally committed as revision 12689 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:04:58 +00:00
Vitor Sessak f8c77c823c Move simple filter chain loading code over to the filter graph.
Commited in SoC by Bobby Bingham on 2007-07-14 22:26:37

Originally committed as revision 12688 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:04:55 +00:00
Vitor Sessak ffcaef3485 Move destruction of the graph's filters to its own helper function.
Commited in SoC by Bobby Bingham on 2007-07-14 21:41:34

Originally committed as revision 12687 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:03:33 +00:00
Vitor Sessak eccb6fb7ce Split filter graphs out into their own source & header files.
Commited in SoC by Bobby Bingham on 2007-07-14 21:20:21

Originally committed as revision 12686 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-04-04 20:02:10 +00:00