3 ms·
I am interested in your use case as I worked on a similar tool, handling a number of file formats. Do you mean mapping meaning from bit fields?
by alophawen 5y ago
I am interested in your use case as I worked on a similar tool, handling a number of file formats.
Do you mean mapping meaning from bit fields?
- dhx 5y agoKuinox could be referring to bit field types that are packed in a way that doesn't correspond to 8-bit alignments. See [1] and [2]. Kaitai Struct does support bit fields but they have to be aligned on 8 bit boundaries[3]. I can't think of any instance of a binary format anyone would still be using that would fail this condition to align on 8 bit boundaries. [1] http://www.catb.org/esr/structure-packing/#_bitfields http://www.catb.org/esr/structure-packing/#_bitfields [2] https://retrocomputing.stackexchange.com/questions/15512/did-any-computer-use-a-7-bit-byte https://retrocomputing.stackexchange.com/questions/15512/did... [3] https://doc.kaitai.io/user_guide.html#_bit_sized_integers https://doc.kaitai.io/user_guide.html#_bit_sized_integers
- Kuinox 5y agoI used it when I was trying to reverse engineer fortnite replays files. https://fortnitereplaydecompressor.readthedocs.io/en/latest/overview/ https://fortnitereplaydecompressor.readthedocs.io/en/latest/... Unreal engine encode the network packet like it's a BitStream, when it want to write a boolean for example, it will write a single bit. The following integer won't be aligned.
- alophawen 5y agoDo you mean the Oodle compression mentioned in the link? Because I don't see any such unaligned bitstream unpacking mentioned in the link or in https://fortnitereplaydecompressor.readthedocs.io/en/latest/fortnite.ksy https://fortnitereplaydecompressor.readthedocs.io/en/latest/...