[rtmpdump] Proposal: dynamically loadable plugins

Antti Ajanki antti.ajanki at iki.fi
Mon Mar 5 21:50:20 CET 2012


Hi,

Attached is an updated version of my plugin patchset, also available at 
https://github.com/aajanki/rtmpdump/tree/plugin2 .

I addressed the main points on Howard's feedback:
- Removed pthreads dependency. Now there is a new RTMP_GlobalInit()
   function that the user must call before any other function. It will
   load the plugins.
- Bumped soname because of the above API change.
- Used AVals in the plugin interface.
- Scan home dir for plugins on Windows, too.
- Used single linked list in the RTMP struct for all callbacks instead
   of separate lists for each type of callback.
- Removed NUM_CALLBACK_TYPES constant completely

I also made a few other changes:
- Documented the plugin interface on the man page.
- Renamed the function that removes callbacks to RTMP_DetachCallback()
   so that it matches with RTMP_AttachCallback()

Antti

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Callback-API.patch
Type: text/x-diff
Size: 10562 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/rtmpdump/attachments/20120305/4248c340/attachment-0005.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-Implement-support-for-dynamically-loadable-plugins-c.patch
Type: text/x-diff
Size: 28362 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/rtmpdump/attachments/20120305/4248c340/attachment-0006.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-rtmpdump-Use-RTMP_SetupUrl-instead-of-RTMP_ParseURL.patch
Type: text/x-diff
Size: 1837 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/rtmpdump/attachments/20120305/4248c340/attachment-0007.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-Print-plugin-information-in-rtmpdump-usage-message.patch
Type: text/x-diff
Size: 833 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/rtmpdump/attachments/20120305/4248c340/attachment-0008.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0005-Document-the-plugin-interface-on-the-man-page.patch
Type: text/x-diff
Size: 10290 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/rtmpdump/attachments/20120305/4248c340/attachment-0009.bin>


More information about the rtmpdump mailing list