...
| PlantUML Render Macro |
|---|
|
@startuml autonumber box "Container" #LightGreen participant GStreamer_client participant rialtoClient end box box "Platform" #LightBlue participant rialtoServer participant GStreamer_server end box GStreamer_client -> rialtoClient: getVolume(pipeline_session) rialtoClient -> rialtoServer: getVolume(pipeline_session) rialtoServer -> GStreamer_server: gst_stream_volume_get_volume(pipeline, GST_STREAM_VOLUME_FORMAT_LINEAR) GStreamer_server --> rialtoServer: volume rialtoServer --> rialtoClient: volume rialtoClient --> GStreamer_client: volume @enduml
|
Stats
API for obtaining the number of "rendered frames" and "dropped frames"
| PlantUML Render Macro |
|---|
|
@startuml autonumber box "Container" #LightGreen participant GStreamer_client participant rialtoClient end box box "Platform" #LightBlue participant rialtoServer participant GStreamer_server end box GStreamer_client -> rialtoClient: getStats(pipeline_session, source_id) rialtoClient -> rialtoServer: getStats(pipeline_session, source_id) rialtoServer -> GStreamer_server: g_object_get(pipeline, "stats", &stats) GStreamer_server --> rialtoServer: GstStructure *stats; containing rendered_frames, dropped_frames rialtoServer --> rialtoClient: rendered_frames, dropped_frames rialtoClient --> GStreamer_client: stats @enduml
|
| Code Block |
|---|
| language | cpp |
|---|
| title | Example rialto-gstreamer client code |
|---|
|
GstStructure *stats{nullptr};
g_object_get(sink, "stats", &stats, nullptr);
if (stats)
{
guint64 renderedVideoFrames;
guint64 droppedVideoFrames;
if (gst_structure_get_uint64(stats, "rendered", &renderedVideoFrames) &&
gst_structure_get_uint64(stats, "dropped", &droppedVideoFrames))
{
std::cout << "renderedVideoFrames " << renderedVideoFrames << std::endl;
std::cout << "droppedVideoFrames " << droppedVideoFrames << std::endl;
}
gst_structure_free(stats);
} |
Mute
API for setting and getting the mute setting for a pipeline session.
...