Difference between revisions of "GstSEIMetadata/Examples/Using Gstd"
< GstSEIMetadata | Examples
m |
|||
Line 5: | Line 5: | ||
− | The following is an example of how to insert and receive | + | The following is an example of how to insert metadata and receive a signal using gstd and the GstSEI plugin. |
Make sure you have gstd [https://developer.ridgerun.com/wiki/index.php?title=GStreamer_Daemon_-_GStreamer_Daemon_Basics gstd]. | Make sure you have gstd [https://developer.ridgerun.com/wiki/index.php?title=GStreamer_Daemon_-_GStreamer_Daemon_Basics gstd]. | ||
+ | Now start the daemon | ||
+ | <pre> | ||
+ | gstd -e | ||
+ | </pre> | ||
+ | Start the client | ||
+ | <pre> | ||
+ | gstd-client | ||
+ | </pre> | ||
+ | Create a pipeline like this one. | ||
+ | <pre> | ||
+ | pipeline_create p videotestsrc is-live=true ! x264enc ! seimetatester ! seiinject ! seiextract signal-new-metadata=true name=extract ! fakesink | ||
+ | </pre> | ||
+ | Play it | ||
+ | <pre> | ||
+ | pipeline_play p | ||
+ | </pre> | ||
+ | Then receive the signal | ||
+ | <pre> | ||
+ | signal_connect p extract new-metadata | ||
+ | </pre> | ||
+ | The expected output is something similar to this: | ||
+ | <syntaxhighlight lang=bash> | ||
+ | { | ||
+ | "code" : 0, | ||
+ | "description" : "Success", | ||
+ | "response" : { | ||
+ | "name" : "new-metadata", | ||
+ | "arguments" : [ | ||
+ | { | ||
+ | "type" : "GstSeiExtract", | ||
+ | "value" : "(GstSeiExtract) extract" | ||
+ | }, | ||
+ | { | ||
+ | "type" : "guint", | ||
+ | "value" : 8 | ||
+ | }, | ||
+ | { | ||
+ | "type" : "gpointer", | ||
+ | "value" : "((gpointer) 0x7fdb9000fdc0)" | ||
+ | } | ||
+ | ] | ||
+ | } | ||
+ | } | ||
+ | </syntaxhighlight> | ||
Revision as of 14:02, 2 July 2021
GstSEIMetadata | |
---|---|
GstSEIMetadata Basics | |
|
|
Getting Started | |
|
|
User Guide | |
|
|
Examples | |
|
|
Performance | |
|
|
Contact Us |
The following is an example of how to insert metadata and receive a signal using gstd and the GstSEI plugin.
Make sure you have gstd gstd.
Now start the daemon
gstd -e
Start the client
gstd-client
Create a pipeline like this one.
pipeline_create p videotestsrc is-live=true ! x264enc ! seimetatester ! seiinject ! seiextract signal-new-metadata=true name=extract ! fakesink
Play it
pipeline_play p
Then receive the signal
signal_connect p extract new-metadata
The expected output is something similar to this:
{
"code" : 0,
"description" : "Success",
"response" : {
"name" : "new-metadata",
"arguments" : [
{
"type" : "GstSeiExtract",
"value" : "(GstSeiExtract) extract"
},
{
"type" : "guint",
"value" : 8
},
{
"type" : "gpointer",
"value" : "((gpointer) 0x7fdb9000fdc0)"
}
]
}
}