diff options
| -rwxr-xr-x | run/test/subs_in_out | 2 | ||||
| -rw-r--r-- | test/subs_in_out.cc | 22 |
2 files changed, 18 insertions, 6 deletions
diff --git a/run/test/subs_in_out b/run/test/subs_in_out index cd464dac..2b43d856 100755 --- a/run/test/subs_in_out +++ b/run/test/subs_in_out @@ -1,6 +1,6 @@ #!/bin/bash -export LD_LIBRARY_PATH=build/src +export LD_LIBRARY_PATH=build/src:build/src/asdcplib:$LD_LIBRARY_PATH if [ "$1" == "--debug" ]; then shift gdb --args build/test/subs_in_out "$@" diff --git a/test/subs_in_out.cc b/test/subs_in_out.cc index 2a662262..fce0bfec 100644 --- a/test/subs_in_out.cc +++ b/test/subs_in_out.cc @@ -18,18 +18,30 @@ */ #include "interop_subtitle_asset.h" +#include "smpte_subtitle_asset.h" #include <iostream> using namespace std; -int main (int argc, char* argv[]) +int +main (int argc, char* argv[]) { - if (argc < 2) { + if (argc != 2) { cerr << "Syntax: " << argv[0] << " <subtitle file>\n"; exit (EXIT_FAILURE); } - - dcp::InteropSubtitleAsset s (argv[1]); - cout << s.xml_as_string (); + + try { + dcp::InteropSubtitleAsset sc (argv[1]); + cout << sc.xml_as_string (); + } catch (exception& e) { + cerr << "Could not load as interop: " << e.what() << "\n"; + try { + dcp::SMPTESubtitleAsset sc (argv[1]); + cout << sc.xml_as_string().raw (); + } catch (exception& e) { + cerr << "Could not load as SMPTE (" << e.what() << ")\n"; + } + } return 0; } |
