summaryrefslogtreecommitdiffstats
path: root/DOCS/tech/libmpcodecs.txt
diff options
context:
space:
mode:
authordiego <diego@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-03-26 00:53:15 +0000
committerdiego <diego@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-03-26 00:53:15 +0000
commit58a658fe363a5c68a0e8e62702e9deae15b57ee0 (patch)
treea2588864c49044faf2e1c5b7fd870009f8b08719 /DOCS/tech/libmpcodecs.txt
parent21c03a2bd4ac76aede005df69c1de9cdf26a2cb9 (diff)
downloadmpv-58a658fe363a5c68a0e8e62702e9deae15b57ee0.tar.bz2
mpv-58a658fe363a5c68a0e8e62702e9deae15b57ee0.tar.xz
Merged video filter description from vop.txt.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@9688 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'DOCS/tech/libmpcodecs.txt')
-rw-r--r--DOCS/tech/libmpcodecs.txt24
1 files changed, 24 insertions, 0 deletions
diff --git a/DOCS/tech/libmpcodecs.txt b/DOCS/tech/libmpcodecs.txt
index c25ed5439c..50a9a7cc8b 100644
--- a/DOCS/tech/libmpcodecs.txt
+++ b/DOCS/tech/libmpcodecs.txt
@@ -111,7 +111,30 @@ Short description of video path:
filter have to implement the whole filter api.
Leaf filters are now: vf_vo.c (wrapper over libvo) and ve_XXX.c (video
encoders used by mencoder).
+
+Video Filters
+=============
+
+Video filters are plugin-like code modules implementing the interface
+defined in vf.h.
+
+Basically it means video output manipulation, i.e. these plugins can
+modify the image and the image properties (size, colorspace etc) between
+the video decoders (vd.h) and the output layer (libvo or video encoders).
+
+The actual API is a mixture of the video decoder (vd.h) and libvo
+(video_out.h) APIs.
+
+main differences:
+- vf plugins may be "loaded" multiple times, with different parameters
+ and context - it's new in MPlayer, old APIs weren't reentrant.
+- vf plugins don't have to implement all functions - all functions have a
+ 'fallback' version, so the plugins only override these if wanted.
+- Each vf plugin has its own get_image context, and they can interchange
+ images/buffers using these get_image/put_image calls.
+
+
The VIDEO FILTER API:
=====================
filename: vf_FILTERNAME.c
@@ -348,6 +371,7 @@ btw, u should avoid using global or static variables, to store filter instance
specific stuff, as filters might be used multiple times & in the future even
multiple streams might be possible
+
The AUDIO path:
===============
TODO!!!