[FFmpeg-user] Writing my own filter - fisheye to Mercator projection.

Moritz Barsnick barsnick at gmx.net
Tue Jun 9 11:36:35 CEST 2015


Hei Jesper,

On Tue, Jun 09, 2015 at 10:06:17 +0200, Jesper Taxbøl wrote:
> I would like to be able to map a circular fisheye image into a Mercator
> projection.
> 
> How would I go about writing my own filter that do this?

I too would like to know more about writing filters. :-) I haven't made
much on an effort yet though.

This is ffmpeg's official introduction, right in your source tree:
https://github.com/FFmpeg/FFmpeg/blob/master/doc/writing_filters.txt

Here's also a short intro with some basics:
http://wiki.multimedia.cx/?title=FFmpeg_filter_HOWTO

I don't know if there's anything better in terms of introductions.

The API is documented here:
https://www.ffmpeg.org/doxygen/2.0/group__lavfi.html

Apart from that, I would go looking through the available filters in
the libavfilter/ subdirectory, and choose a basic one which does
conversions only in a single frame as an example. Unfortunately, ffmpeg
source code is not all too verbose with comments (as to what certain
lines of code are supposed to do).

In your case, something like "rotate" (vf_rotate.c) or "perspective"
(vf_perspective.c) comes to mind.

> Ideally I would like a filter I could pass a shader. But I guess I'm
> dreaming here.

I have no idea what this is about. ;-)

Oh, and when you're done, and you think it may be useful for others,
feel free to submit it to ffmpeg-devel for inclusion. They will rip it
apart from you and tell you where you went wrong.

Hilsen,
Moritz


More information about the ffmpeg-user mailing list