From fb81e5dff4ad28553a67d3e0af6cee65719f81ba Mon Sep 17 00:00:00 2001 From: Sylvain Munaut Date: Thu, 2 Mar 2023 20:43:30 +0100 Subject: [PATCH] bbb: Add parse method for the pan zoom events file Signed-off-by: Sylvain Munaut --- bbb.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/bbb.py b/bbb.py index b764d2c..262e651 100644 --- a/bbb.py +++ b/bbb.py @@ -16,6 +16,8 @@ __all__ = [ 'SlideRef', 'parse_deskshare_xml', 'parse_shapes_svg', + 'PanZoomEvent', + 'parse_panzooms_xml', ] @@ -82,3 +84,20 @@ def parse_shapes_svg(filename): )) return rv + + +PanZoomEvent = namedtuple('PanZoomEvent', 'ts x y w h') + +def parse_panzooms_xml(filename): + rv = [] + xml_doc = lxml.etree.parse(filename) + for element in xml_doc.xpath("//recording/event"): + x, y, w, h = [float(x) for x in element.getchildren()[0].text.split()] + rv.append(PanZoomEvent( + float(element.get("timestamp")), + x, + y, + w, + h, + )) + return rv