mirror of https://git.ffmpeg.org/ffmpeg.git
96 lines
2.4 KiB
HTML
96 lines
2.4 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<!-- This HTML file has been created by texi2html 1.51
|
|
from hooks.texi on 20 November 2002 -->
|
|
|
|
<TITLE>Video Hook Documentation</TITLE>
|
|
</HEAD>
|
|
<BODY>
|
|
<H1>Video Hook Documentation</H1>
|
|
<P>
|
|
<P><HR><P>
|
|
<H1>Table of Contents</H1>
|
|
<UL>
|
|
<LI><A NAME="TOC1" HREF="hooks.html#SEC1">1 Introduction</A>
|
|
<UL>
|
|
<LI><A NAME="TOC2" HREF="hooks.html#SEC2">1.1 null.c</A>
|
|
<LI><A NAME="TOC3" HREF="hooks.html#SEC3">1.2 fish.c</A>
|
|
<LI><A NAME="TOC4" HREF="hooks.html#SEC4">1.3 imlib2.c</A>
|
|
</UL>
|
|
</UL>
|
|
<P><HR><P>
|
|
|
|
<P>
|
|
Video Hook Documentation
|
|
<P>
|
|
|
|
</P>
|
|
|
|
|
|
|
|
<H1><A NAME="SEC1" HREF="hooks.html#TOC1">1 Introduction</A></H1>
|
|
|
|
<P>
|
|
The video hook functionality is designed (mostly) for live video. It allows
|
|
the video to be modified or examined between the decoder and the encoder.
|
|
|
|
</P>
|
|
<P>
|
|
Any number of hook modules can be placed inline, and they are run in the
|
|
order that they were specified on the ffmpeg command line.
|
|
|
|
</P>
|
|
<P>
|
|
Three modules are provided and are described below. They are all intended to
|
|
be used as a base for your own modules.
|
|
|
|
</P>
|
|
<P>
|
|
Modules are loaded using the -vhook option to ffmpeg. The value of this parameter
|
|
is a space seperated list of arguments. The first is the module name, and the rest
|
|
are passed as arguments to the Configure function of the module.
|
|
|
|
</P>
|
|
|
|
|
|
<H2><A NAME="SEC2" HREF="hooks.html#TOC2">1.1 null.c</A></H2>
|
|
|
|
<P>
|
|
This does nothing. Actually it converts the input image to RGB24 and then converts
|
|
it back again. This is meant as a sample that you can use to test your setup.
|
|
|
|
</P>
|
|
|
|
|
|
<H2><A NAME="SEC3" HREF="hooks.html#TOC3">1.2 fish.c</A></H2>
|
|
|
|
<P>
|
|
This implements a 'fish detector'. Essentially it converts the image into HSV
|
|
space and tests whether more than a certain percentage of the pixels fall into
|
|
a specific HSV cuboid. If so, then the image is saved into a file for processing
|
|
by other bits of code.
|
|
|
|
</P>
|
|
<P>
|
|
Why use HSV? It turns out that HSV cuboids represent a more compact range of
|
|
colors than would an RGB cuboid.
|
|
|
|
</P>
|
|
|
|
|
|
<H2><A NAME="SEC4" HREF="hooks.html#TOC4">1.3 imlib2.c</A></H2>
|
|
|
|
<P>
|
|
This allows a caption to be placed onto each frame. It supports inserting the
|
|
time and date. By using the imlib functions, it would be easy to add your own
|
|
graphical logo, add a frame/border, etc.
|
|
|
|
</P>
|
|
|
|
<P><HR><P>
|
|
This document was generated on 20 November 2002 using the
|
|
<A HREF="http://wwwcn.cern.ch/dci/texi2html/">texi2html</A>
|
|
translator version 1.51.</P>
|
|
</BODY>
|
|
</HTML>
|