diff options
| author | jhurst <jhurst@cinecert.com> | 2007-06-08 02:24:37 +0000 |
|---|---|---|
| committer | jhurst <> | 2007-06-08 02:24:37 +0000 |
| commit | 3a3aa48a5a4f7324a9e4c2273d0747d7f58a2813 (patch) | |
| tree | bf218b1e6e4ee415ff94576e08b923801340c4a5 /src/klvwalk.cpp | |
| parent | 27915a74438fcf264d8dfd621dd5e79fa4065813 (diff) | |
fixed encryption for timed text
Diffstat (limited to 'src/klvwalk.cpp')
| -rwxr-xr-x | src/klvwalk.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/klvwalk.cpp b/src/klvwalk.cpp index 467eff9..bf9d9fb 100755 --- a/src/klvwalk.cpp +++ b/src/klvwalk.cpp @@ -192,7 +192,7 @@ main(int argc, const char** argv) if (Options.verbose_flag) fprintf(stderr, "Opening file %s\n", ((*fi).c_str())); - if ( Options.read_mxf_flag ) + if ( Options.read_mxf_flag ) // dump MXF { Kumu::FileReader Reader; ASDCP::MXF::OPAtomHeader Header; @@ -204,6 +204,25 @@ main(int argc, const char** argv) Header.Dump(stdout); + if ( ASDCP_SUCCESS(result) && Header.m_RIP.PairArray.size() > 3 ) + { + MXF::Array<MXF::RIP::Pair>::const_iterator pi = Header.m_RIP.PairArray.begin(); + + for ( pi++; pi != Header.m_RIP.PairArray.end() && ASDCP_SUCCESS(result); pi++ ) + { + result = Reader.Seek((*pi).ByteOffset); + + if ( ASDCP_SUCCESS(result) ) + { + MXF::Partition TmpPart; + result = TmpPart.InitFromFile(Reader); + + if ( ASDCP_SUCCESS(result) && TmpPart.BodySID > 0 ) + TmpPart.Dump(stdout); + } + } + } + if ( ASDCP_SUCCESS(result) ) { ASDCP::MXF::OPAtomIndexFooter Index; |
