aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2025-08-09 16:15:55 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2025-08-11 12:33:16 +0200
commit67320e0627a3b0210794c8f58e3e6acceb074b5c (patch)
treede64fa8c514e53ec76883bf6c51c527ff1865b70
parent354226037646d44701f0f2a84749fb2ea303f043 (diff)
downloadffmpeg-67320e0627a3b0210794c8f58e3e6acceb074b5c.tar.gz
doc/developer: Basic documentation for Source Plugins
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--doc/developer.texi32
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/developer.texi b/doc/developer.texi
index 10a2de00df..e346c7b57a 100644
--- a/doc/developer.texi
+++ b/doc/developer.texi
@@ -1142,4 +1142,36 @@ Publish the news entry.
Send an announcement to the mailing list.
@end enumerate
+@anchor{Source Plugins}
+@chapter Source Plugins
+
+@section What are Source Plugins
+
+Source plugins are a way to maintain features outside FFmpeg.
+
+Each is basically an automatically mergable git fork of FFmpeg.
+
+@section Checklist to be listed in merge-all-source-plugins
+
+@enumerate
+@item
+Supporting master and the latest release branch (with security fixes, when vulnerabilities are discovered)
+Supporting older release branches is optional.
+
+@item
+under LGPL or GPL license (that is a compatible Free software license)
+and adds the needed dependancy to the --enable-gpl switch if its GPL.
+@end enumerate
+
+@section How to make a Source Plugin
+
+To be automatically mergable it is important to keep all changes clean and well separated.
+If you want to create a new source plugin, look at an existing one, or simply fork FFmpeg,
+name the repository "sourceplugin-..." and add it to tools/merge-all-source-plugins
+and try running it. Also check that it works with the latest releases.
+
+@section merge Source Plugins
+
+tools/merge-all-source-plugins
+
@bye