summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2017-02-24 14:57:28 +0000
committerCarl Hetherington <cth@carlh.net>2017-02-24 14:57:28 +0000
commit495555716e98a02b571a5dbc3200ef4ce928272c (patch)
treeb7dd6fadf86f9c86c01e1a715c6e48897760bdb7
parentcab0005c7370a1101df604838ea214eb741098d7 (diff)
Format XML sub output nicely with indents and such.
-rw-r--r--src/interop_subtitle_asset.cc2
-rw-r--r--src/smpte_subtitle_asset.cc2
-rw-r--r--test/write_subtitle_test.cc128
3 files changed, 66 insertions, 66 deletions
diff --git a/src/interop_subtitle_asset.cc b/src/interop_subtitle_asset.cc
index cfd37cb8..99511222 100644
--- a/src/interop_subtitle_asset.cc
+++ b/src/interop_subtitle_asset.cc
@@ -102,7 +102,7 @@ InteropSubtitleAsset::xml_as_string () const
subtitles_as_xml (root, 250, INTEROP);
- return doc.write_to_string ("UTF-8");
+ return doc.write_to_string_formatted ("UTF-8");
}
void
diff --git a/src/smpte_subtitle_asset.cc b/src/smpte_subtitle_asset.cc
index c2456b9c..3b30a0c7 100644
--- a/src/smpte_subtitle_asset.cc
+++ b/src/smpte_subtitle_asset.cc
@@ -278,7 +278,7 @@ SMPTESubtitleAsset::xml_as_string () const
subtitles_as_xml (root->add_child ("SubtitleList", "dcst"), _time_code_rate, SMPTE);
- return doc.write_to_string ("UTF-8");
+ return doc.write_to_string_formatted ("UTF-8");
}
/** Write this content to a MXF file */
diff --git a/test/write_subtitle_test.cc b/test/write_subtitle_test.cc
index 02dc5e1e..773109f1 100644
--- a/test/write_subtitle_test.cc
+++ b/test/write_subtitle_test.cc
@@ -197,22 +197,22 @@ BOOST_AUTO_TEST_CASE (write_interop_subtitle_test)
check_xml (
c.xml_as_string (),
- "<DCSubtitle Version=\"1.0\">"
- "<SubtitleID>a6c58cff-3e1e-4b38-acec-a42224475ef6</SubtitleID>"
- "<MovieTitle>Test</MovieTitle>"
- "<ReelNumber>1</ReelNumber>"
- "<Language>EN</Language>"
- "<Font AspectAdjust=\"1.0\" Color=\"FFFFFFFF\" Effect=\"none\" EffectColor=\"FF000000\" Id=\"Frutiger\" Italic=\"no\" Script=\"normal\" Size=\"48\" Underlined=\"no\" Weight=\"normal\">"
- "<Subtitle SpotNumber=\"1\" TimeIn=\"00:04:09:229\" TimeOut=\"00:04:11:229\" FadeUpTime=\"0\" FadeDownTime=\"0\">"
- "<Text VAlign=\"top\" VPosition=\"80\">Hello world</Text>"
- "</Subtitle>"
- "</Font>"
- "<Font AspectAdjust=\"1.0\" Color=\"FF800040\" Effect=\"border\" EffectColor=\"FF010203\" Italic=\"yes\" Script=\"normal\" Size=\"91\" Underlined=\"yes\" Weight=\"bold\">"
- "<Subtitle SpotNumber=\"2\" TimeIn=\"05:41:00:218\" TimeOut=\"06:12:15:218\" FadeUpTime=\"930792\" FadeDownTime=\"4591834\">"
- "<Text VAlign=\"bottom\" VPosition=\"40\">What's going on</Text>"
- "</Subtitle>"
- "</Font>"
- "</DCSubtitle>",
+ "<DCSubtitle Version=\"1.0\">\n"
+ " <SubtitleID>a6c58cff-3e1e-4b38-acec-a42224475ef6</SubtitleID>\n"
+ " <MovieTitle>Test</MovieTitle>\n"
+ " <ReelNumber>1</ReelNumber>\n"
+ " <Language>EN</Language>\n"
+ " <Font AspectAdjust=\"1.0\" Color=\"FFFFFFFF\" Effect=\"none\" EffectColor=\"FF000000\" Id=\"Frutiger\" Italic=\"no\" Script=\"normal\" Size=\"48\" Underlined=\"no\" Weight=\"normal\">\n"
+ " <Subtitle SpotNumber=\"1\" TimeIn=\"00:04:09:229\" TimeOut=\"00:04:11:229\" FadeUpTime=\"0\" FadeDownTime=\"0\">\n"
+ " <Text VAlign=\"top\" VPosition=\"80\">Hello world</Text>\n"
+ " </Subtitle>\n"
+ " </Font>\n"
+ " <Font AspectAdjust=\"1.0\" Color=\"FF800040\" Effect=\"border\" EffectColor=\"FF010203\" Italic=\"yes\" Script=\"normal\" Size=\"91\" Underlined=\"yes\" Weight=\"bold\">\n"
+ " <Subtitle SpotNumber=\"2\" TimeIn=\"05:41:00:218\" TimeOut=\"06:12:15:218\" FadeUpTime=\"930792\" FadeDownTime=\"4591834\">\n"
+ " <Text VAlign=\"bottom\" VPosition=\"40\">What's going on</Text>\n"
+ " </Subtitle>\n"
+ " </Font>\n"
+ "</DCSubtitle>\n",
list<string> ()
);
}
@@ -278,28 +278,28 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test)
check_xml (
c.xml_as_string (),
- "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
- "<dcst:SubtitleReel xmlns:dcst=\"http://www.smpte-ra.org/schemas/428-7/2010/DCST\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">"
- "<dcst:Id>urn:uuid:a6c58cff-3e1e-4b38-acec-a42224475ef6</dcst:Id>"
- "<dcst:ContentTitleText>Test</dcst:ContentTitleText>"
- "<dcst:IssueDate>2016-04-01T03:52:00.000+00:00</dcst:IssueDate>"
- "<dcst:ReelNumber>1</dcst:ReelNumber>"
- "<dcst:Language>EN</dcst:Language>"
- "<dcst:EditRate>24 1</dcst:EditRate>"
- "<dcst:TimeCodeRate>24</dcst:TimeCodeRate>"
- "<dcst:SubtitleList>"
- "<dcst:Font AspectAdjust=\"1.0\" Color=\"FFFFFFFF\" Effect=\"none\" EffectColor=\"FF000000\" ID=\"Frutiger\" Italic=\"no\" Script=\"normal\" Size=\"48\" Underline=\"no\" Weight=\"normal\">"
- "<dcst:Subtitle SpotNumber=\"1\" TimeIn=\"00:04:09:22\" TimeOut=\"00:04:11:22\" FadeUpTime=\"00:00:00:00\" FadeDownTime=\"00:00:00:00\">"
- "<dcst:Text Valign=\"top\" Vposition=\"80\">Hello world</dcst:Text>"
- "</dcst:Subtitle>"
- "</dcst:Font>"
- "<dcst:Font AspectAdjust=\"1.0\" Color=\"FF800040\" Effect=\"border\" EffectColor=\"FF010203\" Italic=\"yes\" Script=\"normal\" Size=\"91\" Underline=\"yes\" Weight=\"bold\">"
- "<dcst:Subtitle SpotNumber=\"2\" TimeIn=\"05:41:00:21\" TimeOut=\"06:12:15:21\" FadeUpTime=\"01:02:03:04\" FadeDownTime=\"05:06:07:08\">"
- "<dcst:Text Valign=\"bottom\" Vposition=\"40\" Direction=\"rtl\">What's going on</dcst:Text>"
- "</dcst:Subtitle>"
- "</dcst:Font>"
- "</dcst:SubtitleList>"
- "</dcst:SubtitleReel>",
+ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
+ "<dcst:SubtitleReel xmlns:dcst=\"http://www.smpte-ra.org/schemas/428-7/2010/DCST\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">\n"
+ " <dcst:Id>urn:uuid:a6c58cff-3e1e-4b38-acec-a42224475ef6</dcst:Id>\n"
+ " <dcst:ContentTitleText>Test</dcst:ContentTitleText>\n"
+ " <dcst:IssueDate>2016-04-01T03:52:00.000+00:00</dcst:IssueDate>\n"
+ " <dcst:ReelNumber>1</dcst:ReelNumber>\n"
+ " <dcst:Language>EN</dcst:Language>\n"
+ " <dcst:EditRate>24 1</dcst:EditRate>\n"
+ " <dcst:TimeCodeRate>24</dcst:TimeCodeRate>\n"
+ " <dcst:SubtitleList>\n"
+ " <dcst:Font AspectAdjust=\"1.0\" Color=\"FFFFFFFF\" Effect=\"none\" EffectColor=\"FF000000\" ID=\"Frutiger\" Italic=\"no\" Script=\"normal\" Size=\"48\" Underline=\"no\" Weight=\"normal\">\n"
+ " <dcst:Subtitle SpotNumber=\"1\" TimeIn=\"00:04:09:22\" TimeOut=\"00:04:11:22\" FadeUpTime=\"00:00:00:00\" FadeDownTime=\"00:00:00:00\">\n"
+ " <dcst:Text Valign=\"top\" Vposition=\"80\">Hello world</dcst:Text>\n"
+ " </dcst:Subtitle>\n"
+ " </dcst:Font>\n"
+ " <dcst:Font AspectAdjust=\"1.0\" Color=\"FF800040\" Effect=\"border\" EffectColor=\"FF010203\" Italic=\"yes\" Script=\"normal\" Size=\"91\" Underline=\"yes\" Weight=\"bold\">\n"
+ " <dcst:Subtitle SpotNumber=\"2\" TimeIn=\"05:41:00:21\" TimeOut=\"06:12:15:21\" FadeUpTime=\"01:02:03:04\" FadeDownTime=\"05:06:07:08\">\n"
+ " <dcst:Text Valign=\"bottom\" Vposition=\"40\" Direction=\"rtl\">What's going on</dcst:Text>\n"
+ " </dcst:Subtitle>\n"
+ " </dcst:Font>\n"
+ " </dcst:SubtitleList>\n"
+ "</dcst:SubtitleReel>\n",
list<string> ()
);
}
@@ -463,32 +463,32 @@ BOOST_AUTO_TEST_CASE (write_smpte_subtitle_test2)
check_xml (
c.xml_as_string (),
- "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
- "<dcst:SubtitleReel xmlns:dcst=\"http://www.smpte-ra.org/schemas/428-7/2010/DCST\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">"
- "<dcst:Id>urn:uuid:a6c58cff-3e1e-4b38-acec-a42224475ef6</dcst:Id>"
- "<dcst:ContentTitleText>Test</dcst:ContentTitleText>"
- "<dcst:IssueDate>2016-04-01T03:52:00.000+00:00</dcst:IssueDate>"
- "<dcst:ReelNumber>1</dcst:ReelNumber>"
- "<dcst:Language>EN</dcst:Language>"
- "<dcst:EditRate>24 1</dcst:EditRate>"
- "<dcst:TimeCodeRate>24</dcst:TimeCodeRate>"
- "<dcst:SubtitleList>"
- "<dcst:Font AspectAdjust=\"1.0\" Color=\"FFFFFFFF\" Effect=\"none\" EffectColor=\"FF000000\" ID=\"Arial\" Script=\"normal\" Size=\"48\" Underline=\"no\" Weight=\"normal\">"
- "<dcst:Subtitle SpotNumber=\"1\" TimeIn=\"00:00:01:00\" TimeOut=\"00:00:09:00\" FadeUpTime=\"00:00:00:00\" FadeDownTime=\"00:00:00:00\">"
- "<dcst:Text Valign=\"top\" Vposition=\"80\">"
- "<dcst:Font Italic=\"no\">Testing is </dcst:Font>"
- "<dcst:Font Italic=\"yes\">really</dcst:Font>"
- "<dcst:Font Italic=\"no\"> fun</dcst:Font>"
- "</dcst:Text>"
- "<dcst:Text Valign=\"top\" Vposition=\"90\">"
- "<dcst:Font Italic=\"no\">This is the </dcst:Font>"
- "<dcst:Font Italic=\"yes\">second</dcst:Font>"
- "<dcst:Font Italic=\"no\"> line</dcst:Font>"
- "</dcst:Text>"
- "</dcst:Subtitle>"
- "</dcst:Font>"
- "</dcst:SubtitleList>"
- "</dcst:SubtitleReel>",
+ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
+ "<dcst:SubtitleReel xmlns:dcst=\"http://www.smpte-ra.org/schemas/428-7/2010/DCST\" xmlns:xs=\"http://www.w3.org/2001/XMLSchema\">\n"
+ " <dcst:Id>urn:uuid:a6c58cff-3e1e-4b38-acec-a42224475ef6</dcst:Id>\n"
+ " <dcst:ContentTitleText>Test</dcst:ContentTitleText>\n"
+ " <dcst:IssueDate>2016-04-01T03:52:00.000+00:00</dcst:IssueDate>\n"
+ " <dcst:ReelNumber>1</dcst:ReelNumber>\n"
+ " <dcst:Language>EN</dcst:Language>\n"
+ " <dcst:EditRate>24 1</dcst:EditRate>\n"
+ " <dcst:TimeCodeRate>24</dcst:TimeCodeRate>\n"
+ " <dcst:SubtitleList>\n"
+ " <dcst:Font AspectAdjust=\"1.0\" Color=\"FFFFFFFF\" Effect=\"none\" EffectColor=\"FF000000\" ID=\"Arial\" Script=\"normal\" Size=\"48\" Underline=\"no\" Weight=\"normal\">\n"
+ " <dcst:Subtitle SpotNumber=\"1\" TimeIn=\"00:00:01:00\" TimeOut=\"00:00:09:00\" FadeUpTime=\"00:00:00:00\" FadeDownTime=\"00:00:00:00\">\n"
+ " <dcst:Text Valign=\"top\" Vposition=\"80\">\n"
+ " <dcst:Font Italic=\"no\">Testing is </dcst:Font>\n"
+ " <dcst:Font Italic=\"yes\">really</dcst:Font>\n"
+ " <dcst:Font Italic=\"no\"> fun</dcst:Font>\n"
+ " </dcst:Text>\n"
+ " <dcst:Text Valign=\"top\" Vposition=\"90\">\n"
+ " <dcst:Font Italic=\"no\">This is the </dcst:Font>\n"
+ " <dcst:Font Italic=\"yes\">second</dcst:Font>\n"
+ " <dcst:Font Italic=\"no\"> line</dcst:Font>\n"
+ " </dcst:Text>\n"
+ " </dcst:Subtitle>\n"
+ " </dcst:Font>\n"
+ " </dcst:SubtitleList>\n"
+ "</dcst:SubtitleReel>\n",
list<string> ()
);
}