summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2025-01-15 00:51:01 +0100
committerCarl Hetherington <cth@carlh.net>2025-01-15 00:51:01 +0100
commit5402573f8ca2963c5fe93e6dad6615b34dbde6ca (patch)
tree1b3f9c1152db77c01ca8ad46a9fac4142852b0ff
parented587e4398fb3b1f40f3ab7892c48e280bd28f5d (diff)
Log EKLV packet reading.mattias-debug
-rwxr-xr-xsrc/h__Reader.cpp67
1 files changed, 66 insertions, 1 deletions
diff --git a/src/h__Reader.cpp b/src/h__Reader.cpp
index 26ceb4a..1657902 100755
--- a/src/h__Reader.cpp
+++ b/src/h__Reader.cpp
@@ -32,6 +32,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define DEFAULT_MD_DECL
#include "AS_DCP_internal.h"
#include "KLV.h"
+#include "KM_sha1.h"
using namespace ASDCP;
using namespace ASDCP::MXF;
@@ -247,6 +248,9 @@ ASDCP::Read_EKLV_Packet(Kumu::IFileReader& File, const ASDCP::Dictionary& Dict,
{
KLReader Reader;
Result_t result = Reader.ReadKLFromFile(File);
+ Kumu::fpos_t Pos;
+ File.Tell(&Pos);
+ DefaultLogSink().Debug("Read_EKLV_Packet from %ld", Pos);
if ( KM_FAILURE(result) )
return result;
@@ -268,6 +272,36 @@ ASDCP::Read_EKLV_Packet(Kumu::IFileReader& File, const ASDCP::Dictionary& Dict,
CtFrameBuf.Capacity((ui32_t) PacketLength);
ui32_t read_count;
result = File.Read(CtFrameBuf.Data(), (ui32_t) PacketLength, &read_count);
+ DefaultLogSink().Debug("Tried %d, got %d, result was %d", PacketLength, read_count, int(result));
+ Kumu::SHA1_CTX Check;
+ Kumu::SHA1_Init(&Check);
+ Kumu::SHA1_Update(&Check, CtFrameBuf.Data(), PacketLength);
+ byte_t digest[20];
+ Kumu::SHA1_Final(digest, &Check);
+ DefaultLogSink().Debug(
+ "Hash %x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x",
+ digest[0],
+ digest[1],
+ digest[2],
+ digest[3],
+ digest[4],
+ digest[5],
+ digest[6],
+ digest[7],
+ digest[8],
+ digest[9],
+ digest[10],
+ digest[11],
+ digest[12],
+ digest[13],
+ digest[14],
+ digest[15],
+ digest[16],
+ digest[17],
+ digest[18],
+ digest[19]
+ );
+
if ( ASDCP_FAILURE(result) )
return result;
@@ -410,7 +444,38 @@ ASDCP::Read_EKLV_Packet(Kumu::IFileReader& File, const ASDCP::Dictionary& Dict,
ui32_t read_count;
assert(PacketLength <= 0xFFFFFFFFL);
result = File.Read(FrameBuf.Data(), (ui32_t) PacketLength, &read_count);
-
+
+ DefaultLogSink().Debug("Tried %d, got %d, result was %d", PacketLength, read_count, int(result));
+ Kumu::SHA1_CTX Check;
+ Kumu::SHA1_Init(&Check);
+ Kumu::SHA1_Update(&Check, FrameBuf.Data(), PacketLength);
+ byte_t digest[20];
+ Kumu::SHA1_Final(digest, &Check);
+ DefaultLogSink().Debug(
+ "Hash %x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x%x",
+ digest[0],
+ digest[1],
+ digest[2],
+ digest[3],
+ digest[4],
+ digest[5],
+ digest[6],
+ digest[7],
+ digest[8],
+ digest[9],
+ digest[10],
+ digest[11],
+ digest[12],
+ digest[13],
+ digest[14],
+ digest[15],
+ digest[16],
+ digest[17],
+ digest[18],
+ digest[19]
+ );
+
+
if ( ASDCP_FAILURE(result) )
return result;