Closed racerxdl closed 5 years ago
This library works at the block level rather than byte level, so it's most likely not compatible with your use case. So instead of appending parity data to a single byte string, this library generates parity blocks to deal with missing blocks of data - you get a group of blocks rather than a new byte string at the end.
For your use case, something like this would be a better fit, but I have never used this particular library, so I can't say anything about quality or usability.
A shard is just a block of bytes.
Ahh great! I will check this RS from colin-davis. Looks like its what I'm looking for. So far I'm using a wrapper I did for libcorrect (https://github.com/racerxdl/gorrect/blob/master/ReedSolomon.go) but I wanted a pure go solution as well.
Thanks! I will check that.
Lucas
I'm not sure how the sharding process work, but I have no idea what the shards really are.
I though they were the bytes itself, but if I ran against a RS(255,239) generated parity, it doesnt work.
How that library parameters correlate to normal RS Libraries for CCSDS, DVB-S and others?
Quick example: DVB-S uses RS(204,188). This is a example payload:
The last 16 bytes are the parity, first 188 are data.