fec::{self, p_1, p_2, p_3},
interleave::interleave,
protocol::{
- LsfFrame, PacketFrame, PacketFrameCounter, StreamFrame, LSF_SYNC, PACKET_SYNC, STREAM_SYNC,
+ LSF_SYNC, LsfFrame, PACKET_SYNC, PacketFrame, PacketFrameCounter, STREAM_SYNC, StreamFrame,
},
random::random_xor,
};
match frame.counter {
PacketFrameCounter::Frame { index } => {
type1[0..25].copy_from_slice(&frame.payload);
- type1[25] = (index as u8) << 3;
+ type1[25] = (index as u8) << 2;
}
PacketFrameCounter::FinalFrame { payload_len } => {
type1[0..payload_len].copy_from_slice(&frame.payload[0..payload_len]);
- type1[25] = ((payload_len as u8) << 3) | 0x04;
+ type1[25] = ((payload_len as u8) << 2) | 0x80;
}
}
let type3 = fec::encode(&type1, 206, p_3);