add rttrpm encoder

This commit is contained in:
2025-03-15 08:31:17 -05:00
parent 2f3d8486a0
commit b3c330640b
2 changed files with 33 additions and 1 deletions
+3 -1
View File
@@ -1,5 +1,7 @@
import RTTrPHeader from './rttrp';
import RTTrPM from './motion/rttrpm';
import RTTrPHeader from './rttrp-header';
export const Encoders = {
RTTrPHeader,
RTTrPM,
};
+30
View File
@@ -0,0 +1,30 @@
import RTTrPHeader from '../rttrp-header';
export default (
packetId: number,
context: number,
trackables: Uint8Array[],
isLittleEndian: boolean = false
): Uint8Array => {
let totalPacketSize = 18; //header size
trackables.forEach((trackable) => {
totalPacketSize += trackable.length;
});
console.log(totalPacketSize);
const bytes = new Uint8Array(totalPacketSize);
let dataOffset = 0;
const headerBytes = RTTrPHeader(0x4334, 0x02, packetId, 0x00, context, trackables, isLittleEndian);
console.log(headerBytes.length);
bytes.set(headerBytes, dataOffset);
dataOffset += headerBytes.length;
trackables.forEach((trackable) => {
console.log('dataOffset', dataOffset);
bytes.set(trackable, dataOffset);
dataOffset += trackable.length;
});
return bytes;
};