summaryrefslogtreecommitdiff
path: root/src/py/cam/cam_kms.py
diff options
context:
space:
mode:
authorJaslo Ziska <jaslo@ziska.de>2023-11-14 13:18:57 +0100
committerUmang Jain <umang.jain@ideasonboard.com>2023-11-22 01:18:19 +0530
commitfd84180d7a09eb9f4891f740735b28af68c201af (patch)
tree366c9db2e030458d1279134c1f76713c30f0ff18 /src/py/cam/cam_kms.py
parent091591b52e5535065eef141339c3d69406185136 (diff)
gstreamer: Implement element EOS handling
This commit implements EOS handling for events sent to the libcamerasrc element by the send_event method (which can happen when pressing Ctrl-C while running gst-launch-1.0 -e, see below). EOS events from downstream elements returning GST_FLOW_EOS are not considered here. To archive this add a function for the send_event method which handles the GST_EVENT_EOS event. This function will set an atomic to the received event and push this EOS event to all source pads in the running task. Also set the GST_ELEMENT_FLAG_SOURCE flag to identify libcamerasrc as a source element which enables it to receive EOS events sent to the (pipeline) bin containing it. This in turn enables libcamerasrc to receive EOS events, for example, from gst-launch-1.0 with the -e (--eos-on-shutdown) flag applied. Bug: https://bugs.libcamera.org/show_bug.cgi?id=91 Signed-off-by: Jaslo Ziska <jaslo@ziska.de> Acked-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Reviewed-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Reviewed-by: Umang Jain <umang.jain@ideasonboard.com> Signed-off-by: Umang Jain <umang.jain@ideasonboard.com>
Diffstat (limited to 'src/py/cam/cam_kms.py')
0 files changed, 0 insertions, 0 deletions