summaryrefslogtreecommitdiff
path: root/src/MXF.cpp
diff options
context:
space:
mode:
authorjhurst <jhurst@cinecert.com>2006-10-19 02:59:54 +0000
committerjhurst <>2006-10-19 02:59:54 +0000
commit6b5d04290663a89cb8666cdc1c0df238d065a981 (patch)
tree89a28617a95019d459bfe2a67a20b9225102e5a1 /src/MXF.cpp
parent82140b626463d12393c40bb34ff98433e16b2360 (diff)
Denis' bug fixes
Diffstat (limited to 'src/MXF.cpp')
-rwxr-xr-xsrc/MXF.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/MXF.cpp b/src/MXF.cpp
index 0913f1b..28b156c 100755
--- a/src/MXF.cpp
+++ b/src/MXF.cpp
@@ -33,6 +33,10 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <KM_log.h>
using Kumu::DefaultLogSink;
+// index segments must be < 64K
+// NOTE: this value may too high if advanced index entry elements are used.
+const ui32_t CBRIndexEntriesPerSegment = 5000;
+
//------------------------------------------------------------------------------------------
//
@@ -1093,7 +1097,7 @@ ASDCP::MXF::OPAtomIndexFooter::PushIndexEntry(const IndexTableSegment::IndexEntr
m_CurrentSegment->IndexEditRate = m_EditRate;
m_CurrentSegment->IndexStartPosition = 0;
}
- else if ( m_CurrentSegment->IndexEntryArray.size() >= 1486 ) // 1486 gets us 16K packets
+ else if ( m_CurrentSegment->IndexEntryArray.size() >= CBRIndexEntriesPerSegment )
{ // no, this one is full, start another
m_CurrentSegment->IndexDuration = m_CurrentSegment->IndexEntryArray.size();
ui64_t StartPosition = m_CurrentSegment->IndexStartPosition + m_CurrentSegment->IndexDuration;