mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-29 20:35:40 +00:00
Remove old school plugins listing generator
This commit is contained in:
parent
7159236b52
commit
2d46903eb7
8 changed files with 0 additions and 17130 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -1,398 +0,0 @@
|
|||
<plugins module_name="gstreamer">
|
||||
<plugin>
|
||||
<name>coreelements</name>
|
||||
<description>GStreamer core elements</description>
|
||||
<filename>../../plugins/elements/.libs/libgstcoreelements.so</filename>
|
||||
<basename>libgstcoreelements.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gstreamer</source>
|
||||
<package>GStreamer source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>capsfilter</name>
|
||||
<longname>CapsFilter</longname>
|
||||
<class>Generic</class>
|
||||
<description>Pass data without modification, limiting formats</description>
|
||||
<author>David Schleef <ds@schleef.org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>concat</name>
|
||||
<longname>Concat</longname>
|
||||
<class>Generic</class>
|
||||
<description>Concatenate multiple streams</description>
|
||||
<author>Sebastian Dröge <sebastian@centricular.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink_%u</name>
|
||||
<direction>sink</direction>
|
||||
<presence>request</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>downloadbuffer</name>
|
||||
<longname>DownloadBuffer</longname>
|
||||
<class>Generic</class>
|
||||
<description>Download Buffer element</description>
|
||||
<author>Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>fakesink</name>
|
||||
<longname>Fake Sink</longname>
|
||||
<class>Sink</class>
|
||||
<description>Black hole for data</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu>, Wim Taymans <wim@fluendo.com>, Mr. 'frag-me-more' Vanderwingo <wingo@fluendo.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>fakesrc</name>
|
||||
<longname>Fake Source</longname>
|
||||
<class>Source</class>
|
||||
<description>Push empty (no data) buffers around</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu>, Wim Taymans <wim@fluendo.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>fdsink</name>
|
||||
<longname>Filedescriptor Sink</longname>
|
||||
<class>Sink/File</class>
|
||||
<description>Write data to a file descriptor</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>fdsrc</name>
|
||||
<longname>Filedescriptor Source</longname>
|
||||
<class>Source/File</class>
|
||||
<description>Read from a file descriptor</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>filesink</name>
|
||||
<longname>File Sink</longname>
|
||||
<class>Sink/File</class>
|
||||
<description>Write stream to a file</description>
|
||||
<author>Thomas Vander Stichele <thomas at apestaart dot org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>filesrc</name>
|
||||
<longname>File Source</longname>
|
||||
<class>Source/File</class>
|
||||
<description>Read from arbitrary point in a file</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>funnel</name>
|
||||
<longname>Funnel pipe fitting</longname>
|
||||
<class>Generic</class>
|
||||
<description>N-to-1 pipe fitting</description>
|
||||
<author>Olivier Crete <olivier.crete@collabora.co.uk></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink_%u</name>
|
||||
<direction>sink</direction>
|
||||
<presence>request</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>identity</name>
|
||||
<longname>Identity</longname>
|
||||
<class>Generic</class>
|
||||
<description>Pass data without modification</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>input-selector</name>
|
||||
<longname>Input selector</longname>
|
||||
<class>Generic</class>
|
||||
<description>N-to-1 input stream selector</description>
|
||||
<author>Julien Moutte <julien@moutte.net>, Jan Schmidt <thaytan@mad.scientist.com>, Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink_%u</name>
|
||||
<direction>sink</direction>
|
||||
<presence>request</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>multiqueue</name>
|
||||
<longname>MultiQueue</longname>
|
||||
<class>Generic</class>
|
||||
<description>Multiple data queue</description>
|
||||
<author>Edward Hervey <edward@fluendo.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink_%u</name>
|
||||
<direction>sink</direction>
|
||||
<presence>request</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>output-selector</name>
|
||||
<longname>Output selector</longname>
|
||||
<class>Generic</class>
|
||||
<description>1-to-N output stream selector</description>
|
||||
<author>Stefan Kost <stefan.kost@nokia.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>request</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>queue</name>
|
||||
<longname>Queue</longname>
|
||||
<class>Generic</class>
|
||||
<description>Simple data queue</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>queue2</name>
|
||||
<longname>Queue 2</longname>
|
||||
<class>Generic</class>
|
||||
<description>Simple data queue</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu>, Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>streamiddemux</name>
|
||||
<longname>Streamid Demux</longname>
|
||||
<class>Generic</class>
|
||||
<description>1-to-N output stream by stream-id</description>
|
||||
<author>HoonHee Lee <hoonhee.lee@lge.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>tee</name>
|
||||
<longname>Tee pipe fitting</longname>
|
||||
<class>Generic</class>
|
||||
<description>1-to-N pipe fitting</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu>, Wim Taymans <wim@fluendo.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>request</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>typefind</name>
|
||||
<longname>TypeFind</longname>
|
||||
<class>Generic</class>
|
||||
<description>Finds the media type of a stream</description>
|
||||
<author>Benjamin Otte <in7y118@public.uni-hamburg.de></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>valve</name>
|
||||
<longname>Valve element</longname>
|
||||
<class>Filter</class>
|
||||
<description>Drops buffers and events or lets them through</description>
|
||||
<author>Olivier Crete <olivier.crete@collabora.co.uk></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin></plugins>
|
|
@ -1,275 +0,0 @@
|
|||
#!/usr/bin/python3
|
||||
#
|
||||
# Copyright (C) 2016 Tim-Philipp Müller
|
||||
#
|
||||
# License: this script is made available under the following licenses:
|
||||
# Simplified BSD License/FreeBSD License, MIT License, and/or LGPLv2.1+ license.
|
||||
#
|
||||
# Reads plugin introspection .xml files (one per module) and outputs a
|
||||
# list of all plugins in markdown format. We may want to do something
|
||||
# more fancy here in future, for now this is just to provide a replacement
|
||||
# for the xltsproc-generated list in the www module
|
||||
#
|
||||
# XML files were generated like this (we'll want to automate that at some point):
|
||||
#
|
||||
# echo '<plugins module_name="gstreamer">' > core.xml; \
|
||||
# cat ~/gst/1.10/gstreamer/docs/plugins/inspect/plugin-* >> core.xml; \
|
||||
# echo '</plugins>' >> core.xml
|
||||
#
|
||||
# for m in base good ugly bad; do \
|
||||
# echo '<plugins module_name="gst-plugins-'$m'">' > $m.xml; \
|
||||
# cat ~/gst/1.10/gst-plugins-$m/docs/plugins/inspect/plugin-* >> $m.xml; \
|
||||
# echo '</plugins>' >> $m.xml; \
|
||||
# done
|
||||
|
||||
import xml.etree.ElementTree as xmltree
|
||||
import http.client as httpclient
|
||||
import urllib.parse as urlparse
|
||||
import pickle
|
||||
import sys
|
||||
import os
|
||||
|
||||
allow_offline = False
|
||||
is_offline = False
|
||||
|
||||
modules = {}
|
||||
|
||||
all_elements = {}
|
||||
all_plugins = {}
|
||||
|
||||
url_cache = {}
|
||||
url_conn = None
|
||||
|
||||
# check if an url exists or not
|
||||
def check_url(url):
|
||||
global url_conn
|
||||
|
||||
if is_offline and allow_offline:
|
||||
return True
|
||||
|
||||
if url in url_cache:
|
||||
return url_cache[url]
|
||||
|
||||
r = urlparse.urlparse(url)
|
||||
|
||||
# Reuse existing conn if possible
|
||||
is_gst_fdo = url.startswith('https://gstreamer.freedesktop.org')
|
||||
if is_gst_fdo and url_conn is not None:
|
||||
connection = url_conn
|
||||
else:
|
||||
connection = httpclient.HTTPSConnection(r.netloc)
|
||||
if is_gst_fdo:
|
||||
url_conn = connection
|
||||
|
||||
connection.request('HEAD', r.path)
|
||||
response = connection.getresponse()
|
||||
response.read()
|
||||
exists = response.status < 400
|
||||
url_cache[url] = exists
|
||||
sys.stderr.write('Checking if {0} exists: {1}\n'.format(url,exists))
|
||||
return exists
|
||||
|
||||
# load url cache
|
||||
def load_url_cache():
|
||||
global url_cache
|
||||
try:
|
||||
with open('cache/url_cache.pkl', 'rb') as f:
|
||||
url_cache = pickle.load(f)
|
||||
except:
|
||||
url_cache = {}
|
||||
|
||||
# save url cache
|
||||
def save_url_cache():
|
||||
global url_cache
|
||||
if not os.path.exists('cache'):
|
||||
os.makedirs('cache')
|
||||
with open('cache/url_cache.pkl', 'wb') as f:
|
||||
pickle.dump(url_cache, f)
|
||||
|
||||
def parse_plugin_element(element_node):
|
||||
element = {}
|
||||
for detail in element_node:
|
||||
if detail.tag in ['pads']:
|
||||
pass
|
||||
elif detail.text:
|
||||
element[detail.tag] = detail.text
|
||||
|
||||
return element
|
||||
|
||||
def parse_plugin_elements(elements_node):
|
||||
element_list = []
|
||||
|
||||
for enode in elements_node:
|
||||
element = parse_plugin_element(enode)
|
||||
element_list.append(element)
|
||||
|
||||
return element_list
|
||||
|
||||
def parse_plugin(plugin_node):
|
||||
plugin = {}
|
||||
|
||||
for detail in plugin_node:
|
||||
if detail.tag == 'elements':
|
||||
plugin['elements'] = parse_plugin_elements(detail)
|
||||
elif detail.text:
|
||||
plugin[detail.tag] = detail.text
|
||||
|
||||
return plugin
|
||||
|
||||
def parse_plugins(xml_fn):
|
||||
plugin_list = []
|
||||
|
||||
tree = xmltree.parse(xml_fn)
|
||||
root = tree.getroot()
|
||||
for pnode in root:
|
||||
plugin = parse_plugin(pnode)
|
||||
plugin_list.append(plugin)
|
||||
|
||||
return plugin_list
|
||||
|
||||
def process_plugins(short_name):
|
||||
module = {}
|
||||
elements = []
|
||||
plugins = parse_plugins(short_name + '.xml')
|
||||
module['plugins'] = plugins
|
||||
for p in plugins:
|
||||
p['module_name'] = short_name
|
||||
elist = p['elements']
|
||||
for e in elist:
|
||||
e['plugin_name'] = p['name']
|
||||
e['module_name'] = short_name
|
||||
elements.append(e)
|
||||
|
||||
name = e['name']
|
||||
if name in all_elements:
|
||||
print('Element {0} already exists in element list! {1}'.format(name, all_elements[name]))
|
||||
else:
|
||||
all_elements[name] = e
|
||||
|
||||
if p['name'] in all_plugins:
|
||||
print('Plugin {0} already exists in plugin list! {1}'.format(name, all_plugins[p['name']]))
|
||||
else:
|
||||
all_plugins[p['name']] = p
|
||||
|
||||
module['elements'] = elements
|
||||
|
||||
modules[short_name] = module
|
||||
|
||||
# __main__
|
||||
|
||||
load_url_cache()
|
||||
|
||||
if not check_url('https://www.google.com'):
|
||||
if not allow_offline:
|
||||
raise Exception('URL checking does not seem to work, are you online?')
|
||||
else:
|
||||
print ('URL checking does not seem to work, continuing in offline mode')
|
||||
is_offline = True
|
||||
|
||||
for m in ['core', 'base', 'good', 'bad', 'ugly']:
|
||||
process_plugins(m)
|
||||
|
||||
plugins_page = '''# List of Elements and Plugins
|
||||
|
||||
<!-- WARNING: This page is generated! Any modifications will be overwritten -->
|
||||
|
||||
Note: this list is not complete! It does not contain OS-specific plugins
|
||||
for Android, Windows, macOS, iOS, or wrapper plugins (gst-libav, gst-omx),
|
||||
nor gst-rtsp-server or gstreamer-vaapi elements.
|
||||
|
||||
There may be links to pages that don't exist, this means that the element or
|
||||
plugin does not have documentation yet or the documentation is not hooked up
|
||||
properly (help welcome!).
|
||||
|
||||
| Element | Description | Plugin | Module |
|
||||
|---------|-------------|---------|--------|
|
||||
'''
|
||||
|
||||
plugin_names = []
|
||||
|
||||
element_links = []
|
||||
plugin_links = []
|
||||
|
||||
element_names = []
|
||||
for e in all_elements:
|
||||
element_names.append(e)
|
||||
|
||||
element_names.sort()
|
||||
for e in element_names:
|
||||
element_name = e
|
||||
element_desc = all_elements[e]['description']
|
||||
plugin_name = all_elements[e]['plugin_name']
|
||||
module_nick = all_elements[e]['module_name']
|
||||
if module_nick == 'core':
|
||||
module_name = 'gstreamer'
|
||||
else:
|
||||
module_name = 'gst-plugins-' + module_nick
|
||||
|
||||
# column 1: element name
|
||||
edoc_url = 'https://gstreamer.freedesktop.org/data/doc/gstreamer/head/' + \
|
||||
'{1}-plugins/html/{1}-plugins-{0}.html'.format(element_name, module_name)
|
||||
|
||||
if check_url(edoc_url):
|
||||
element_links.append('[element-{0}]: {1}\n'.format(element_name, edoc_url))
|
||||
plugins_page += '|[{0}][element-{0}]'.format(element_name)
|
||||
else:
|
||||
plugins_page += '|{0}'.format(element_name)
|
||||
|
||||
# column 2: element description
|
||||
|
||||
element_desc.replace('\n', ' ')
|
||||
element_desc.replace('|', ' ')
|
||||
if len(element_desc) > 150:
|
||||
element_desc = '(too long)'
|
||||
plugins_page += '|{0}'.format(element_desc)
|
||||
|
||||
# column 3: plugin name
|
||||
pdoc_url = 'https://gstreamer.freedesktop.org/data/doc/gstreamer/head/' + \
|
||||
'{1}-plugins/html/{1}-plugins-plugin-{0}.html'.format(plugin_name,module_name)
|
||||
|
||||
if check_url(pdoc_url):
|
||||
plugins_page += '|[{0}][{0}]'.format(plugin_name)
|
||||
else:
|
||||
plugins_page += '|{0}'.format(plugin_name)
|
||||
|
||||
if plugin_name not in plugin_names:
|
||||
plugin_names.append(plugin_name)
|
||||
if check_url(pdoc_url):
|
||||
plugin_links.append('[{0}]: {1}\n'.format(plugin_name,pdoc_url))
|
||||
|
||||
# column 4: module name
|
||||
plugins_page += '|[{0}][{1}]'.format(module_name, module_nick)
|
||||
|
||||
# end of row
|
||||
plugins_page += '|\n'
|
||||
|
||||
# Write module shortcuts list
|
||||
|
||||
plugins_page += '''
|
||||
|
||||
[core]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/
|
||||
[base]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-base-plugins/html/
|
||||
[good]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good-plugins/html/
|
||||
[ugly]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-ugly-plugins/html/
|
||||
[bad]: https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-plugins/html/
|
||||
|
||||
'''
|
||||
|
||||
# Write element shortcuts list
|
||||
|
||||
element_links.sort()
|
||||
for elink in element_links:
|
||||
plugins_page += elink
|
||||
|
||||
plugins_page += '\n'
|
||||
|
||||
# Write plugin shortcuts list
|
||||
|
||||
plugin_links.sort()
|
||||
for plink in plugin_links:
|
||||
plugins_page += plink
|
||||
|
||||
# Output page to stdout
|
||||
print(plugins_page)
|
||||
|
||||
save_url_cache()
|
File diff suppressed because one or more lines are too long
|
@ -1,57 +0,0 @@
|
|||
update-plugin-list:
|
||||
@cd plugins-introspection; \
|
||||
./create_plugin_list.py > ../markdown/plugins.md ; \
|
||||
cd ..
|
||||
|
||||
CHECKOUT_DIR = $(top_builddir)/plugins-introspection/cache
|
||||
|
||||
checkoutdir:
|
||||
@mkdir -p $(CHECKOUT_DIR) || { \
|
||||
echo "Failed to create $(CHECKOUT_DIR)"; \
|
||||
exit 1; \
|
||||
}
|
||||
|
||||
update-xml: checkoutdir
|
||||
@for m in gstreamer gst-plugins-base gst-plugins-good gst-plugins-ugly gst-plugins-bad; do \
|
||||
moduledir=$(CHECKOUT_DIR)/$$m; \
|
||||
branch=$(BRANCH); \
|
||||
if [ -d $$moduledir ] ; then \
|
||||
cd $$moduledir; \
|
||||
echo "$$m checkout: cleaning"; \
|
||||
git fetch --tags; \
|
||||
git clean --dry-run -f -d -x || { \
|
||||
echo "Cleaning $$m checkout failed"; exit 1; \
|
||||
} ; \
|
||||
echo "$$m checkout: updating..."; \
|
||||
git checkout -q $$branch && git pull -q || { \
|
||||
echo "Updating $$m checkout failed"; exit 1; \
|
||||
} ; \
|
||||
else \
|
||||
echo "$$m checkout: creating (cloning)"; \
|
||||
git clone -b $$branch https://gitlab.freedesktop.org/gstreamer/$$m.git $$moduledir || { \
|
||||
echo "git clone failed"; exit 1; \
|
||||
} ; \
|
||||
cd ../../ ; \
|
||||
fi; \
|
||||
done
|
||||
@cd $(CHECKOUT_DIR)/gstreamer; \
|
||||
echo '<plugins module_name="gstreamer">' > ../../core.xml; \
|
||||
git ls-files docs/plugins/inspect/ | sort | xargs cat >> ../../core.xml; \
|
||||
echo '</plugins>' >> ../../core.xml
|
||||
@for m in base good ugly bad; do \
|
||||
cd $(CHECKOUT_DIR)/gst-plugins-$$m; \
|
||||
echo '<plugins module_name="gst-plugins-'$$m'">' > ../../$$m.xml; \
|
||||
git ls-files docs/plugins/inspect/ | sort | xargs cat >> ../../$$m.xml; \
|
||||
echo '</plugins>' >> ../../$$m.xml; \
|
||||
done
|
||||
|
||||
|
||||
foo:
|
||||
@for m in base good ugly bad; do \
|
||||
echo '<plugins module_name="gst-plugins-'$$m'">' > plugins-introspection/$$m.xml; \
|
||||
cat $(CHECKOUT_DIR)/gst-plugins-$$m/docs/plugins/inspect/plugin-* >> plugins-introspection/$$m.xml; \
|
||||
echo '</plugins>' >> plugins-introspection/$$m.xml; \
|
||||
done
|
||||
|
||||
clean-url-cache:
|
||||
@rm -f plugins-introspection/cache/url_cache.pkl
|
|
@ -1,734 +0,0 @@
|
|||
<plugins module_name="gst-plugins-ugly">
|
||||
<plugin>
|
||||
<name>a52dec</name>
|
||||
<description>Decodes ATSC A/52 encoded audio streams</description>
|
||||
<filename>../../ext/a52dec/.libs/libgsta52dec.so</filename>
|
||||
<basename>libgsta52dec.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>GPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>a52dec</name>
|
||||
<longname>ATSC A/52 audio decoder</longname>
|
||||
<class>Codec/Decoder/Audio</class>
|
||||
<description>Decodes ATSC A/52 encoded audio streams</description>
|
||||
<author>David I. Lehn <dlehn@users.sourceforge.net></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-ac3; audio/ac3; audio/x-private1-ac3</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string)F32LE, layout=(string)interleaved, rate=(int)[ 4000, 96000 ], channels=(int)[ 1, 6 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>amrnb</name>
|
||||
<description>Adaptive Multi-Rate Narrow-Band</description>
|
||||
<filename>../../ext/amrnb/.libs/libgstamrnb.so</filename>
|
||||
<basename>libgstamrnb.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>unknown</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>amrnbdec</name>
|
||||
<longname>AMR-NB audio decoder</longname>
|
||||
<class>Codec/Decoder/Audio</class>
|
||||
<description>Adaptive Multi-Rate Narrow-Band audio decoder</description>
|
||||
<author>GStreamer maintainers <gstreamer-devel@lists.freedesktop.org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/AMR, rate=(int)8000, channels=(int)1</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)8000, channels=(int)1</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>amrnbenc</name>
|
||||
<longname>AMR-NB audio encoder</longname>
|
||||
<class>Codec/Encoder/Audio</class>
|
||||
<description>Adaptive Multi-Rate Narrow-Band audio encoder</description>
|
||||
<author>Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)8000, channels=(int)1</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/AMR, rate=(int)8000, channels=(int)1</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>amrwbdec</name>
|
||||
<description>Adaptive Multi-Rate Wide-Band Decoder</description>
|
||||
<filename>../../ext/amrwbdec/.libs/libgstamrwbdec.so</filename>
|
||||
<basename>libgstamrwbdec.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>unknown</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>amrwbdec</name>
|
||||
<longname>AMR-WB audio decoder</longname>
|
||||
<class>Codec/Decoder/Audio</class>
|
||||
<description>Adaptive Multi-Rate Wideband audio decoder</description>
|
||||
<author>Renato Araujo <renato.filho@indt.org.br></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/AMR-WB, rate=(int)16000, channels=(int)1</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)16000, channels=(int)1</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>asf</name>
|
||||
<description>Demuxes and muxes audio and video in Microsofts ASF format</description>
|
||||
<filename>../../gst/asfdemux/.libs/libgstasf.so</filename>
|
||||
<basename>libgstasf.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>asfdemux</name>
|
||||
<longname>ASF Demuxer</longname>
|
||||
<class>Codec/Demuxer</class>
|
||||
<description>Demultiplexes ASF Streams</description>
|
||||
<author>Owen Fraser-Green <owen@discobabe.net></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-ms-asf</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>audio_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>video_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>rtpasfdepay</name>
|
||||
<longname>RTP ASF packet depayloader</longname>
|
||||
<class>Codec/Depayloader/Network</class>
|
||||
<description>Extracts ASF streams from RTP</description>
|
||||
<author>Tim-Philipp Müller <tim centricular net>, Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/x-rtp, media=(string){ application, video, audio }, payload=(int)[ 96, 127 ], clock-rate=(int)[ 1, 2147483647 ], encoding-name=(string)X-ASF-PF</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-ms-asf</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>rtspwms</name>
|
||||
<longname>WMS RTSP Extension</longname>
|
||||
<class>Network/Extension/Protocol</class>
|
||||
<description>Extends RTSP so that it can handle WMS setup</description>
|
||||
<author>Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>cdio</name>
|
||||
<description>Read audio from audio CDs</description>
|
||||
<filename>../../ext/cdio/.libs/libgstcdio.so</filename>
|
||||
<basename>libgstcdio.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>GPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>cdiocddasrc</name>
|
||||
<longname>CD audio source (CDDA)</longname>
|
||||
<class>Source/File</class>
|
||||
<description>Read audio from CD using libcdio</description>
|
||||
<author>Tim-Philipp Müller <tim centricular net></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int)44100, channels=(int)2</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>dvdlpcmdec</name>
|
||||
<description>Decode DVD LPCM frames into standard PCM</description>
|
||||
<filename>../../gst/dvdlpcmdec/.libs/libgstdvdlpcmdec.so</filename>
|
||||
<basename>libgstdvdlpcmdec.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>dvdlpcmdec</name>
|
||||
<longname>DVD LPCM Audio decoder</longname>
|
||||
<class>Codec/Decoder/Audio</class>
|
||||
<description>Decode DVD LPCM frames into standard PCM audio</description>
|
||||
<author>Jan Schmidt <jan@noraisin.net>, Michael Smith <msmith@fluendo.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-private1-lpcm; audio/x-private2-lpcm; audio/x-lpcm, width=(int){ 16, 20, 24 }, rate=(int){ 32000, 44100, 48000, 96000 }, channels=(int)[ 1, 8 ], dynamic_range=(int)[ 0, 255 ], emphasis=(boolean){ true, false }, mute=(boolean){ true, false }</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string){ S16BE, S24BE }, layout=(string)interleaved, rate=(int){ 32000, 44100, 48000, 96000 }, channels=(int)[ 1, 8 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>dvdread</name>
|
||||
<description>Access a DVD with dvdread</description>
|
||||
<filename>../../ext/dvdread/.libs/libgstdvdread.so</filename>
|
||||
<basename>libgstdvdread.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>GPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>dvdreadsrc</name>
|
||||
<longname>DVD Source</longname>
|
||||
<class>Source/File/DVD</class>
|
||||
<description>Access a DVD title/chapter/angle using libdvdread</description>
|
||||
<author>Erik Walthinsen <omega@cse.ogi.edu></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/mpeg, mpegversion=(int)2, systemstream=(boolean)true</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>dvdsub</name>
|
||||
<description>DVD subtitle parser and decoder</description>
|
||||
<filename>../../gst/dvdsub/.libs/libgstdvdsub.so</filename>
|
||||
<basename>libgstdvdsub.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>dvdsubdec</name>
|
||||
<longname>DVD subtitle decoder</longname>
|
||||
<class>Codec/Decoder/Video</class>
|
||||
<description>Decodes DVD subtitles into AYUV video frames</description>
|
||||
<author>Wim Taymans <wim.taymans@gmail.com>, Jan Schmidt <thaytan@mad.scientist.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>subpicture/x-dvd</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-raw, format=(string){ AYUV, ARGB }, width=(int)720, height=(int)576, framerate=(fraction)0/1</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>dvdsubparse</name>
|
||||
<longname>DVD subtitle parser</longname>
|
||||
<class>Codec/Parser/Subtitle</class>
|
||||
<description>Parses and packetizes DVD subtitle streams</description>
|
||||
<author>Mark Nauwelaerts <mnauw@users.sourceforge.net></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>subpicture/x-dvd</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>subpicture/x-dvd, parsed=(boolean)true</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>lame</name>
|
||||
<description>Encode MP3s with LAME</description>
|
||||
<filename>../../ext/lame/.libs/libgstlame.so</filename>
|
||||
<basename>libgstlame.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>lamemp3enc</name>
|
||||
<longname>L.A.M.E. mp3 encoder</longname>
|
||||
<class>Codec/Encoder/Audio</class>
|
||||
<description>High-quality free MP3 encoder</description>
|
||||
<author>Sebastian Dröge <sebastian.droege@collabora.co.uk></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)1; audio/x-raw, format=(string)S16LE, layout=(string)interleaved, rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)2, channel-mask=(bitmask)0x0000000000000003</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/mpeg, mpegversion=(int)1, layer=(int)3, rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>mad</name>
|
||||
<description>mp3 decoding based on the mad library</description>
|
||||
<filename>../../ext/mad/.libs/libgstmad.so</filename>
|
||||
<basename>libgstmad.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>GPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>mad</name>
|
||||
<longname>mad mp3 decoder</longname>
|
||||
<class>Codec/Decoder/Audio</class>
|
||||
<description>Uses mad code to decode mp3 streams</description>
|
||||
<author>Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ], rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ]</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string)S32LE, layout=(string)interleaved, rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>mpeg2dec</name>
|
||||
<description>LibMpeg2 decoder</description>
|
||||
<filename>../../ext/mpeg2dec/.libs/libgstmpeg2dec.so</filename>
|
||||
<basename>libgstmpeg2dec.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>GPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>mpeg2dec</name>
|
||||
<longname>mpeg1 and mpeg2 video decoder</longname>
|
||||
<class>Codec/Decoder/Video</class>
|
||||
<description>Uses libmpeg2 to decode MPEG video streams</description>
|
||||
<author>Wim Taymans <wim.taymans@chello.be></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/mpeg, mpegversion=(int)[ 1, 2 ], systemstream=(boolean)false</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-raw, format=(string){ YV12, I420, Y42B, Y444 }, width=(int)[ 16, 4096 ], height=(int)[ 16, 4096 ], framerate=(fraction)[ 0/1, 2147483647/1 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>mpg123</name>
|
||||
<description>mp3 decoding based on the mpg123 library</description>
|
||||
<filename>../../ext/mpg123/.libs/libgstmpg123.so</filename>
|
||||
<basename>libgstmpg123.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>mpg123audiodec</name>
|
||||
<longname>mpg123 mp3 decoder</longname>
|
||||
<class>Codec/Decoder/Audio</class>
|
||||
<description>Decodes mp3 streams using the mpg123 library</description>
|
||||
<author>Carlos Rafael Giani <dv@pseudoterminal.org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ], rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ], parsed=(boolean)true</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string){ S16LE, U16LE, S32LE, U32LE, S24LE, U24LE, F32LE }, rate=(int){ 8000, 11025, 12000, 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ], layout=(string)interleaved</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>realmedia</name>
|
||||
<description>RealMedia support plugins</description>
|
||||
<filename>../../gst/realmedia/.libs/libgstrmdemux.so</filename>
|
||||
<basename>libgstrmdemux.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>pnmsrc</name>
|
||||
<longname>PNM packet receiver</longname>
|
||||
<class>Source/Network</class>
|
||||
<description>Receive data over the network via PNM</description>
|
||||
<author>Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/vnd.rn-realmedia</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>rademux</name>
|
||||
<longname>RealAudio Demuxer</longname>
|
||||
<class>Codec/Demuxer</class>
|
||||
<description>Demultiplex a RealAudio file</description>
|
||||
<author>Tim-Philipp Müller <tim centricular net></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/x-pn-realaudio</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>rdtdepay</name>
|
||||
<longname>RDT packet parser</longname>
|
||||
<class>Codec/Depayloader/Network</class>
|
||||
<description>Extracts RealMedia from RDT packets</description>
|
||||
<author>Lutz Mueller <lutz at topfrose dot de>, Wim Taymans <wim@fluendo.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/x-rdt, media=(string)application, clock-rate=(int)[ 1, 2147483647 ], encoding-name=(string)X-REAL-RDT</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/vnd.rn-realmedia</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>rdtmanager</name>
|
||||
<longname>RTP Decoder</longname>
|
||||
<class>Codec/Parser/Network</class>
|
||||
<description>Accepts raw RTP and RTCP packets and sends them forward</description>
|
||||
<author>Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>recv_rtcp_sink_%u</name>
|
||||
<direction>sink</direction>
|
||||
<presence>request</presence>
|
||||
<details>application/x-rtcp</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>recv_rtp_sink_%u</name>
|
||||
<direction>sink</direction>
|
||||
<presence>request</presence>
|
||||
<details>application/x-rdt</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>recv_rtp_src_%u_%u_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>application/x-rdt</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>rtcp_src_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>request</presence>
|
||||
<details>application/x-rtcp</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>rmdemux</name>
|
||||
<longname>RealMedia Demuxer</longname>
|
||||
<class>Codec/Demuxer</class>
|
||||
<description>Demultiplex a RealMedia file into audio and video streams</description>
|
||||
<author>David Schleef <ds@schleef.org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>application/vnd.rn-realmedia</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>audio_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>video_%u</name>
|
||||
<direction>source</direction>
|
||||
<presence>sometimes</presence>
|
||||
<details>ANY</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
<element>
|
||||
<name>rtspreal</name>
|
||||
<longname>RealMedia RTSP Extension</longname>
|
||||
<class>Network/Extension/Protocol</class>
|
||||
<description>Extends RTSP so that it can handle RealMedia setup</description>
|
||||
<author>Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>siddec</name>
|
||||
<description>Uses libsidplay to decode .sid files</description>
|
||||
<filename>../../ext/sidplay/.libs/libgstsid.so</filename>
|
||||
<basename>libgstsid.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>GPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>siddec</name>
|
||||
<longname>Sid decoder</longname>
|
||||
<class>Codec/Decoder/Audio</class>
|
||||
<description>Use libsidplay to decode SID audio tunes</description>
|
||||
<author>Wim Taymans <wim.taymans@gmail.com></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-sid</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string){ S16LE, U16LE, S8, U8 }, layout=(string)interleaved, rate=(int)[ 8000, 48000 ], channels=(int)[ 1, 2 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>twolame</name>
|
||||
<description>Encode MP2s with TwoLAME</description>
|
||||
<filename>../../ext/twolame/.libs/libgsttwolame.so</filename>
|
||||
<basename>libgsttwolame.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>twolamemp2enc</name>
|
||||
<longname>TwoLAME mp2 encoder</longname>
|
||||
<class>Codec/Encoder/Audio</class>
|
||||
<description>High-quality free MP2 encoder</description>
|
||||
<author>Sebastian Dröge <sebastian.droege@collabora.co.uk></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/x-raw, format=(string){ F32LE, S16LE }, layout=(string)interleaved, rate=(int){ 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)1; audio/x-raw, format=(string){ F32LE, S16LE }, layout=(string)interleaved, rate=(int){ 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)2, channel-mask=(bitmask)0x0000000000000003</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/mpeg, mpegversion=(int)1, layer=(int)2, rate=(int){ 16000, 22050, 24000, 32000, 44100, 48000 }, channels=(int)[ 1, 2 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>x264</name>
|
||||
<description>libx264-based H264 plugins</description>
|
||||
<filename>../../ext/x264/.libs/libgstx264.so</filename>
|
||||
<basename>libgstx264.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>GPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>x264enc</name>
|
||||
<longname>x264enc</longname>
|
||||
<class>Codec/Encoder/Video</class>
|
||||
<description>H264 Encoder</description>
|
||||
<author>Josef Zlomek <josef.zlomek@itonis.tv>, Mark Nauwelaerts <mnauw@users.sf.net></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-raw, format=(string){ I420, YV12, Y42B, Y444, NV12, I420_10LE, I422_10LE, Y444_10LE }, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)[ 16, 2147483647 ], height=(int)[ 16, 2147483647 ]</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>video/x-h264, framerate=(fraction)[ 0/1, 2147483647/1 ], width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], stream-format=(string){ avc, byte-stream }, alignment=(string)au, profile=(string){ high-4:4:4, high-4:2:2, high-10, high, main, baseline, constrained-baseline, high-4:4:4-intra, high-4:2:2-intra, high-10-intra }</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin><plugin>
|
||||
<name>xingmux</name>
|
||||
<description>Add XING tags to mpeg audio files</description>
|
||||
<filename>../../gst/xingmux/.libs/libgstxingmux.so</filename>
|
||||
<basename>libgstxingmux.so</basename>
|
||||
<version>1.10.1</version>
|
||||
<license>LGPL</license>
|
||||
<source>gst-plugins-ugly</source>
|
||||
<package>GStreamer Ugly Plug-ins source release</package>
|
||||
<origin>Unknown package origin</origin>
|
||||
<elements>
|
||||
<element>
|
||||
<name>xingmux</name>
|
||||
<longname>MP3 Xing muxer</longname>
|
||||
<class>Formatter/Muxer/Metadata</class>
|
||||
<description>Adds a Xing header to the beginning of a VBR MP3 file</description>
|
||||
<author>Christophe Fergeau <teuf@gnome.org></author>
|
||||
<pads>
|
||||
<caps>
|
||||
<name>sink</name>
|
||||
<direction>sink</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ]</details>
|
||||
</caps>
|
||||
<caps>
|
||||
<name>src</name>
|
||||
<direction>source</direction>
|
||||
<presence>always</presence>
|
||||
<details>audio/mpeg, mpegversion=(int)1, layer=(int)[ 1, 3 ]</details>
|
||||
</caps>
|
||||
</pads>
|
||||
</element>
|
||||
</elements>
|
||||
</plugin></plugins>
|
|
@ -133,7 +133,6 @@ doc_index.md
|
|||
plugin-development/appendix/checklist-element.md
|
||||
plugin-development/appendix/porting.md
|
||||
plugin-development/appendix/licensing-advisory.md
|
||||
plugins.md
|
||||
splitup.md
|
||||
licensing.md
|
||||
rtp.md
|
||||
|
|
Loading…
Reference in a new issue