# libccsds **Repository Path**: NOP404_admin/libccsds ## Basic Information - **Project Name**: libccsds - **Description**: No description available - **Primary Language**: Unknown - **License**: LGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-18 - **Last Updated**: 2025-08-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # libccsds A library to handle several CCSDS routines Why? Throughout my projects, I very often ended up needing some common routines (eg, deframing, demuxing) to deal with CCSDS protocols. There was no library fitting this purpose already (at least, not in C/C++) and copy-pasting code between projects in the long run is... Not a good thing so I decided to put all that in a nice lightweight library! ### Features Currently this library provides : - Defined data structures and parsing methods (from binary) for CADU, VCDU, M-PDU, and CCSDS frames - A CADU deframer, based on a sync machine for better performances (based on [this](http://www.sat.cc.ua/data/CADU%20Frame%20Synchro.pdf)) - A CCSDS demuxer, taking input from a VCID and extracting a stream of CCSDS frames - A simple derandomizer, taking randomized CADUs and doing the work This is very much a work-in-progress, so some abstraction (eg, for different frame sizes, VCID encryption marker parsing, etc) is not yet implemented as well as all the planned modularity features. ### Building This project uses CMake, so all you need to do is those commands : ``` mkdir build && cd build cmake .. sudo make install ```