| GStreamer data protocol |
| Intended to wrap GstData objects in a line protocol for use with |
| pipe / network elements. |
| IDEAS-- -- -*for transporting buffers, have a function that creates a header for a given buffer to be written before the buffer.This way, you don 't lose |
| time creating a GDP buffer from the buffer |
| * allow for CRC' ing of the GstBuffer, optionally * have a version number of the protocol * optimizing the header for size is not useful since the GstData structure |
| already contains more than 32 bytes anyway, making up half the header size PROTOCOL-- -- ----*1 byte GDP major |
| version (0) |
| *1 byte GDP minor version (1) |
| * 1 byte GDP flags |
| * 1 byte GDP data type |
| 1 for buffer, 2 caps, 65 + for events |
| * 4 byte length of "payload" |
| * 8 byte timestamp of buffer / event |
| * 8 byte duration of buffer |
| * 8 byte offset |
| * 8 byte offset_end |
| * 2 byte buffer data flags * 14 byte future extension (ABI padding) |
| *2 byte optional header crc |
| * 2 byte optional payload crc |
| * (length) payload |
| header:60 bytes |
| PROTOCOL CHANGELOG-- -- |
| --------------0.1:added two bytes for buffer flags all numbers use |
| network byte ordering. |