mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-08 23:42:28 +00:00
pbutils: Add documentation about encoding targets
This commit is contained in:
parent
f4c25ae498
commit
bff04a1396
2 changed files with 58 additions and 44 deletions
|
@ -222,6 +222,63 @@
|
||||||
*
|
*
|
||||||
* ...
|
* ...
|
||||||
* ]|
|
* ]|
|
||||||
|
*
|
||||||
|
* # Encoding Target
|
||||||
|
*
|
||||||
|
* On top of the notion of profiles, we implement the notion of EncodingTarget.
|
||||||
|
* Encoding Targets are basically a higher level of abstraction to define formats
|
||||||
|
* for specific target types. Those can define several GstEncodingProfiles with
|
||||||
|
* different names, for example one for transcoding in full HD, another one for
|
||||||
|
* low res, etc.. which are defined in the same encoding target.
|
||||||
|
*
|
||||||
|
* Basically if you wan to encode a stream to send it to, say, youtube you should
|
||||||
|
* have a Youtube encoding target defined in the "online-service" category.
|
||||||
|
*
|
||||||
|
* ## Encoding target serialization format
|
||||||
|
*
|
||||||
|
* Encoding targets are serialized in a KeyFile like files.
|
||||||
|
*
|
||||||
|
* |[
|
||||||
|
* [GStreamer Encoding Target]
|
||||||
|
* name : <name>
|
||||||
|
* category : <category>
|
||||||
|
* \description : <description> #translatable
|
||||||
|
*
|
||||||
|
* [profile-<profile1name>]
|
||||||
|
* name : <name>
|
||||||
|
* \description : <description> #optional
|
||||||
|
* format : <format>
|
||||||
|
* preset : <preset>
|
||||||
|
*
|
||||||
|
* [streamprofile-<id>]
|
||||||
|
* parent : <encodingprofile.name>[,<encodingprofile.name>..]
|
||||||
|
* \type : <type> # "audio", "video", "text"
|
||||||
|
* format : <format>
|
||||||
|
* preset : <preset>
|
||||||
|
* restriction : <restriction>
|
||||||
|
* presence : <presence>
|
||||||
|
* pass : <pass>
|
||||||
|
* variableframerate : <variableframerate>
|
||||||
|
* ]|
|
||||||
|
*
|
||||||
|
* # Location of encoding target files
|
||||||
|
*
|
||||||
|
* $GST_DATADIR/gstreamer-GST_API_VERSION/encoding-profile
|
||||||
|
* $HOME/gstreamer-GST_API_VERSION/encoding-profile
|
||||||
|
*
|
||||||
|
* There also is a GST_ENCODING_TARGET_PATH environment variable
|
||||||
|
* defining a list of folder containing encoding target files.
|
||||||
|
*
|
||||||
|
* ## Naming convention
|
||||||
|
*
|
||||||
|
* |[
|
||||||
|
* $(target.category)/$(target.name).gep
|
||||||
|
* ]|
|
||||||
|
*
|
||||||
|
* # Naming restrictions:
|
||||||
|
*
|
||||||
|
* * lowercase ASCII letter for the first character
|
||||||
|
* * Same for all other characters + numerics + hyphens
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
|
|
|
@ -27,50 +27,7 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include "encoding-target.h"
|
#include "encoding-target.h"
|
||||||
|
|
||||||
/*
|
/* Documented in encoding-profile.c */
|
||||||
* File format
|
|
||||||
*
|
|
||||||
* GKeyFile style.
|
|
||||||
*
|
|
||||||
* [GStreamer Encoding Target]
|
|
||||||
* name : <name>
|
|
||||||
* category : <category>
|
|
||||||
* description : <description> #translatable
|
|
||||||
*
|
|
||||||
* [profile-<profile1name>]
|
|
||||||
* name : <name>
|
|
||||||
* description : <description> #optional
|
|
||||||
* format : <format>
|
|
||||||
* preset : <preset>
|
|
||||||
*
|
|
||||||
* [streamprofile-<id>]
|
|
||||||
* parent : <encodingprofile.name>[,<encodingprofile.name>..]
|
|
||||||
* type : <type> # "audio", "video", "text"
|
|
||||||
* format : <format>
|
|
||||||
* preset : <preset>
|
|
||||||
* restriction : <restriction>
|
|
||||||
* presence : <presence>
|
|
||||||
* pass : <pass>
|
|
||||||
* variableframerate : <variableframerate>
|
|
||||||
* */
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Location of profile files
|
|
||||||
*
|
|
||||||
* $GST_DATADIR/gstreamer-GST_API_VERSION/encoding-profile
|
|
||||||
* $HOME/gstreamer-GST_API_VERSION/encoding-profile
|
|
||||||
*
|
|
||||||
* There also is a GST_ENCODING_TARGET_PATH environment variable
|
|
||||||
* defining a list of folder containing encoding target files.
|
|
||||||
*
|
|
||||||
* Naming convention
|
|
||||||
* $(target.category)/$(target.name).gep
|
|
||||||
*
|
|
||||||
* Naming restrictions:
|
|
||||||
* lowercase ASCII letter for the first character
|
|
||||||
* Same for all other characters + numerics + hyphens
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
#define GST_ENCODING_TARGET_HEADER "GStreamer Encoding Target"
|
#define GST_ENCODING_TARGET_HEADER "GStreamer Encoding Target"
|
||||||
#define GST_ENCODING_TARGET_DIRECTORY "encoding-profiles"
|
#define GST_ENCODING_TARGET_DIRECTORY "encoding-profiles"
|
||||||
|
|
Loading…
Reference in a new issue