summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorWolfgang Ruppel <imftool@t-online.de>2020-04-22 23:40:39 +0200
committerGitHub <noreply@github.com>2020-04-22 14:40:39 -0700
commitda198d2a3a2b772357b3333aae3eb95e96fb6d93 (patch)
treea132eb940f4ba29deb20288e169078c0c2201a6a /src
parent8be2ad09b94fbf2f023e24cf1b7eec10c03047b4 (diff)
* Fixes an error when calling OP1aHeader::GetMDObjectByType()
* IAB Essence type detection added * Adding AS_02_internal.h to deploy targets
Diffstat (limited to 'src')
-rw-r--r--src/AS_02_IAB.cpp2
-rw-r--r--src/AS_02_IAB.h2
-rwxr-xr-xsrc/AS_DCP.h1
-rwxr-xr-xsrc/AS_DCP_MXF.cpp4
-rw-r--r--src/CMakeLists.txt2
5 files changed, 8 insertions, 3 deletions
diff --git a/src/AS_02_IAB.cpp b/src/AS_02_IAB.cpp
index 3b0aa8c..319833f 100644
--- a/src/AS_02_IAB.cpp
+++ b/src/AS_02_IAB.cpp
@@ -329,7 +329,7 @@ AS_02::IAB::MXFReader::MXFReader() : m_State(ST_READER_BEGIN) {}
AS_02::IAB::MXFReader::~MXFReader() {}
-const ASDCP::MXF::OP1aHeader&
+ASDCP::MXF::OP1aHeader&
AS_02::IAB::MXFReader::OP1aHeader() const {
if (this->m_State == ST_READER_BEGIN) {
throw Kumu::RuntimeError(Kumu::RESULT_INIT);
diff --git a/src/AS_02_IAB.h b/src/AS_02_IAB.h
index aade55d..57fb77e 100644
--- a/src/AS_02_IAB.h
+++ b/src/AS_02_IAB.h
@@ -172,7 +172,7 @@ namespace AS_02 {
*
* @throws std::runtime_error if the Track File is not open
*/
- virtual const ASDCP::MXF::OP1aHeader& OP1aHeader() const;
+ virtual ASDCP::MXF::OP1aHeader& OP1aHeader() const;
/**
* Warning: direct manipulation of MXF structures can interfere
diff --git a/src/AS_DCP.h b/src/AS_DCP.h
index 74991f6..44e60be 100755
--- a/src/AS_DCP.h
+++ b/src/AS_DCP.h
@@ -223,6 +223,7 @@ namespace ASDCP {
ESS_AS02_TIMED_TEXT, // the file contains a TTML document and zero or more resources
ESS_AS02_ISXD, // the file contains an ISXD document stream (per SMPTE RDD 47)
ESS_AS02_ACES, // the file contains two or more ACES codestreams (per SMPTE ST 2067-50)
+ ESS_AS02_IAB, // the file contains an IAB stream (per SMPTE ST 2067-201)
ESS_MAX
};
diff --git a/src/AS_DCP_MXF.cpp b/src/AS_DCP_MXF.cpp
index d3606fe..c478f2f 100755
--- a/src/AS_DCP_MXF.cpp
+++ b/src/AS_DCP_MXF.cpp
@@ -277,6 +277,10 @@ ASDCP::EssenceType(const std::string& filename, EssenceType_t& type)
{
type = ESS_AS02_ACES;
}
+ else if ( ASDCP_SUCCESS(TestHeader.GetMDObjectByType(OBJ_TYPE_ARGS(IABEssenceDescriptor))) )
+ {
+ type = ESS_AS02_IAB;
+ }
}
}
else
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index f501d1c..2787e46 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -40,7 +40,7 @@ set(asdcp_src ${asdcp_src} Wav.h WavFileWriter.h MXF.h Metadata.h JP2K.h AS_DCP.
set(as02_src h__02_Reader.cpp h__02_Writer.cpp AS_02_ISXD.cpp AS_02_JP2K.cpp AS_02_PCM.cpp ST2052_TextParser.cpp AS_02_TimedText.cpp AS_02_ACES.cpp ACES_Codestream_Parser.cpp ACES_Sequence_Parser.cpp ACES.cpp AS_02_IAB.cpp)
# header for deployment (install target)
-set(as02_deploy_header AS_02.h Metadata.h MXF.h MXFTypes.h KLV.h MDD.h AS_02_ACES.h ACES.h AS_02_IAB.h)
+set(as02_deploy_header AS_02.h Metadata.h MXF.h MXFTypes.h KLV.h MDD.h AS_02_ACES.h ACES.h AS_02_IAB.h AS_02_internal.h)
# header
set(as02_src ${as02_src} AS_02.h AS_02_internal.h AS_02_ACES.h ACES.h AS_02_IAB.h)