Release me
[asdcplib.git] / src / PCMParserList.h
index 718870c29ee0c469a1c743897be8116c5da53915..0af162738b5425b234187f6a8abdb1e8e6fcd03e 100755 (executable)
@@ -1,5 +1,5 @@
 /*
-Copyright (c) 2004-2009, John Hurst
+Copyright (c) 2004-2016, John Hurst
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without
@@ -32,6 +32,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef _PCMPARSERLIST_H_
 #define _PCMPARSERLIST_H_
 
+#include <KM_fileio.h>
 #include <AS_DCP.h>
 #include <vector>
 
@@ -53,7 +54,7 @@ namespace ASDCP
       ParserInstance();
       virtual ~ParserInstance();
 
-      Result_t OpenRead(const char* filename, Rational& PictureRate);
+      Result_t OpenRead(const std::string& filename, const Rational& PictureRate);
       Result_t PutSample(byte_t* p);
       Result_t ReadFrame();
       inline ui32_t SampleSize()  { return m_SampleSize; }
@@ -72,10 +73,12 @@ namespace ASDCP
       PCMParserList();
       virtual ~PCMParserList();
 
-      Result_t OpenRead(ui32_t argc, const char** argv, Rational& PictureRate);
+      Result_t OpenRead(ui32_t argc, const char** argv, const Rational& PictureRate);
+      Result_t OpenRead(const Kumu::PathList_t& argv, const Rational& PictureRate);
       Result_t FillAudioDescriptor(PCM::AudioDescriptor& ADesc) const;
       Result_t Reset();
       Result_t ReadFrame(PCM::FrameBuffer& OutFB);
+      Result_t Seek(ui32_t frame_number);
     };
 }