/*
-Copyright (c) 2004-2006, John Hurst
+Copyright (c) 2004-2007, John Hurst
All rights reserved.
Redistribution and use in source and binary forms, with or without
ASDCP_TEST_NULL(VDescObj);
VDescObj->SampleRate = VDesc.SampleRate;
- VDescObj->SampleRate.Numerator = VDesc.FrameRate;
VDescObj->ContainerDuration = VDesc.ContainerDuration;
VDescObj->FrameLayout = VDesc.FrameLayout;
if ( ! m_File.IsOpen() )
return RESULT_INIT;
- Result_t result = ReadEKLVPacket(FrameNum, FrameBuf, Dict::ul(MDD_MPEG2Essence), Ctx, HMAC);
+ Result_t result = ReadEKLVFrame(FrameNum, FrameBuf, Dict::ul(MDD_MPEG2Essence), Ctx, HMAC);
if ( ASDCP_FAILURE(result) )
return result;
if ( stream == 0 )
stream = stderr;
- fprintf(stream, "Frame: %06lu, %c%-2hu, %7lu bytes",
+ fprintf(stream, "Frame: %06u, %c%-2hu, %7u bytes",
m_FrameNumber, FrameTypeChar(m_FrameType), m_TemporalOffset, m_Size);
if ( m_GOPStart )
// update the index manager
Entry.TemporalOffset = - FrameBuf.TemporalOffset();
- Entry.KeyFrameOffset = m_GOPOffset;
+ Entry.KeyFrameOffset = - m_GOPOffset;
Entry.Flags = Flags;
+ /*
+ fprintf(stderr, "to: %4hd ko: %4hd c1: %4hd c2: %4hd fl: 0x%02x\n",
+ Entry.TemporalOffset, Entry.KeyFrameOffset,
+ m_GOPOffset + Entry.TemporalOffset,
+ Entry.KeyFrameOffset - Entry.TemporalOffset,
+ Entry.Flags);
+ */
m_FooterPart.PushIndexEntry(Entry);
m_FramesWritten++;
m_GOPOffset++;