diff options
| author | jhurst <jhurst@cinecert.com> | 2021-05-31 10:21:33 -0700 |
|---|---|---|
| committer | jhurst <jhurst@cinecert.com> | 2021-05-31 10:21:33 -0700 |
| commit | 8380aef198b34a020e0bc76dcf4b5e97c27da553 (patch) | |
| tree | 276cf0ce265e742030abb4bdfc2ea18cb60c3a04 /src/JXS_Sequence_Parser.cpp | |
| parent | f9d7fbc33aa571c547d916b145712469efd9f4b8 (diff) | |
JXS support without the legacy PictureDescriptor pattern
Diffstat (limited to 'src/JXS_Sequence_Parser.cpp')
| -rw-r--r-- | src/JXS_Sequence_Parser.cpp | 29 |
1 files changed, 10 insertions, 19 deletions
diff --git a/src/JXS_Sequence_Parser.cpp b/src/JXS_Sequence_Parser.cpp index 38b8de4..331f0e3 100644 --- a/src/JXS_Sequence_Parser.cpp +++ b/src/JXS_Sequence_Parser.cpp @@ -31,16 +31,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \brief AS-DCP library, JPEG XS sequence codestream essence reader implementation */ -#include <AS_DCP.h> -#include <AS_DCP_JXS.h> -#include <KM_fileio.h> -#include <KM_log.h> -#include <list> -#include <string> -#include <algorithm> -#include <string.h> -#include <assert.h> - +#include <JXS.h> using namespace ASDCP; //------------------------------------------------------------------------------------------ @@ -107,13 +98,10 @@ class ASDCP::JXS::SequenceParser::h__SequenceParser ASDCP_NO_COPY_CONSTRUCT(h__SequenceParser); public: - PictureDescriptor m_PDesc; + ASDCP::MXF::GenericPictureEssenceDescriptor m_PDesc; + ASDCP::MXF::JPEGXSPictureSubDescriptor m_JxsSubdesc; - h__SequenceParser() : m_FramesRead(0) - { - memset(&m_PDesc, 0, sizeof(m_PDesc)); - m_PDesc.EditRate = Rational(24, 1); - } + h__SequenceParser() : m_FramesRead(0), m_PDesc(&DefaultSMPTEDict()), m_JxsSubdesc(&DefaultSMPTEDict()) {} ~h__SequenceParser() { @@ -157,7 +145,7 @@ ASDCP::JXS::SequenceParser::h__SequenceParser::OpenRead() result = Parser.OpenReadFrame((*m_CurrentFile).c_str(), TmpBuffer); if (ASDCP_SUCCESS(result)) - result = Parser.FillPictureDescriptor(m_PDesc); + result = Parser.FillPictureDescriptor(m_PDesc, m_JxsSubdesc); // how big is it? if (ASDCP_SUCCESS(result)) @@ -268,12 +256,15 @@ ASDCP::JXS::SequenceParser::ReadFrame(FrameBuffer& FB) const // ASDCP::Result_t -ASDCP::JXS::SequenceParser::FillPictureDescriptor(PictureDescriptor& PDesc) const +ASDCP::JXS::SequenceParser::FillPictureDescriptor( + ASDCP::MXF::GenericPictureEssenceDescriptor& picture_descriptor, + ASDCP::MXF::JPEGXSPictureSubDescriptor& jxs_subdescriptor) const { if (m_Parser.empty()) return RESULT_INIT; - PDesc = m_Parser->m_PDesc; + picture_descriptor = m_Parser->m_PDesc; + jxs_subdescriptor = m_Parser->m_JxsSubdesc; return RESULT_OK; } |
