From 8a540270d1da93e211835b650090294db53f48ba Mon Sep 17 00:00:00 2001 From: Adrian Cochrane Date: Fri, 15 May 2020 19:52:48 +1200 Subject: [PATCH] Don't let marks interfer with silence collapsing. --- src/SSML.hs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/SSML.hs b/src/SSML.hs index f99988a..9472dfc 100644 --- a/src/SSML.hs +++ b/src/SSML.hs @@ -56,10 +56,10 @@ buildVoices (VoicePattern age gender variant:voices) children = el "voice" [ buildVoices [] children = children buildBox self childs = concat [ + el "mark" [("name", marker self)] [], breakEl $ pauseBefore self, audioEl $ cueBefore self, breakEl $ restBefore self, - el "mark" [("name", marker self)] [], childs, breakEl $ restAfter self, audioEl $ cueAfter self, @@ -95,6 +95,8 @@ floatBreaks el@(Element _ _ childs) | break@(NodeElement (Element "break" _ _)):nodes <- reverse $ floatBreaks' childs = floatBreaks el{elementNodes = reverse nodes} ++ [break] | otherwise = [NodeElement el] +floatBreaks' (NodeElement m@(Element "mark" _ _):NodeElement b@(Element "break" _ _):nodes) = + NodeElement b : floatBreaks' (NodeElement m:nodes) floatBreaks' (NodeElement el:nodes) = floatBreaks el ++ floatBreaks' nodes floatBreaks' (node:nodes) = node : floatBreaks' nodes floatBreaks' [] = [] -- 2.30.2