ascii-chat
Binary v0.15.83-53-gb711d8720
Library lib/v0.3.2-701-gb711d8720
Video chat in your terminal
Loading...
Searching...
No Matches
Protocol Constants

Protocol version, feature flags, compression, and frame constants. More...

Files

file  protocol_constants.h
 Protocol version, features, compression, and frame flag constants.

Macros

#define PROTOCOL_VERSION_MAJOR   2
 Major protocol version number.
#define PROTOCOL_VERSION_MINOR   3
 Minor protocol version number.
#define PROTOCOL_VERSION_PATCH   0
 Patch protocol version number.
#define FEATURE_RLE_ENCODING   0x01
 Run-length encoding support flag.
#define FEATURE_DELTA_FRAMES   0x02
 Delta frame encoding support flag.
#define COMPRESS_ALGO_NONE   0x00
 No compression algorithm.
#define COMPRESS_ALGO_ZLIB   0x01
 zlib deflate compression algorithm
#define COMPRESS_ALGO_LZ4   0x02
 LZ4 fast compression algorithm.
#define COMPRESS_ALGO_ZSTD   0x03
 zstd algorithm
#define FRAME_FLAG_HAS_COLOR   0x01
 Frame includes ANSI color codes.
#define FRAME_FLAG_IS_COMPRESSED   0x02
 Frame data is compressed.
#define FRAME_FLAG_RLE_COMPRESSED   0x04
 Frame data is RLE compressed.
#define FRAME_FLAG_IS_STRETCHED   0x08
 Frame was stretched (aspect adjusted).
#define FRAME_FLAG_RENDER_CONTRACT   0x10
 Explicit versioned render contract precedes encoded ASCII text.
#define PIXEL_FORMAT_RGB   1
 Packed RGB24 pixel format used by ACIP image-frame senders.
#define PIXEL_FORMAT_RGBA   2
 Packed RGBA32 pixel format.
#define PIXEL_FORMAT_BGR   3
 BGR pixel format.
#define PIXEL_FORMAT_BGRA   4
 BGRA pixel format.

Detailed Description

Protocol version, feature flags, compression, and frame constants.

Macro Definition Documentation

◆ COMPRESS_ALGO_LZ4

#define COMPRESS_ALGO_LZ4   0x02

#include <include/ascii-chat/common/protocol_constants.h>

LZ4 fast compression algorithm.

Definition at line 49 of file protocol_constants.h.

◆ COMPRESS_ALGO_NONE

#define COMPRESS_ALGO_NONE   0x00

#include <include/ascii-chat/common/protocol_constants.h>

No compression algorithm.

Definition at line 43 of file protocol_constants.h.

◆ COMPRESS_ALGO_ZLIB

#define COMPRESS_ALGO_ZLIB   0x01

#include <include/ascii-chat/common/protocol_constants.h>

zlib deflate compression algorithm

Definition at line 46 of file protocol_constants.h.

◆ COMPRESS_ALGO_ZSTD

#define COMPRESS_ALGO_ZSTD   0x03

#include <include/ascii-chat/common/protocol_constants.h>

zstd algorithm

Definition at line 52 of file protocol_constants.h.

◆ FEATURE_DELTA_FRAMES

#define FEATURE_DELTA_FRAMES   0x02

#include <include/ascii-chat/common/protocol_constants.h>

Delta frame encoding support flag.

Definition at line 36 of file protocol_constants.h.

◆ FEATURE_RLE_ENCODING

#define FEATURE_RLE_ENCODING   0x01

#include <include/ascii-chat/common/protocol_constants.h>

Run-length encoding support flag.

Definition at line 33 of file protocol_constants.h.

◆ FRAME_FLAG_HAS_COLOR

#define FRAME_FLAG_HAS_COLOR   0x01

#include <include/ascii-chat/common/protocol_constants.h>

Frame includes ANSI color codes.

Definition at line 59 of file protocol_constants.h.

◆ FRAME_FLAG_IS_COMPRESSED

#define FRAME_FLAG_IS_COMPRESSED   0x02

#include <include/ascii-chat/common/protocol_constants.h>

Frame data is compressed.

Definition at line 62 of file protocol_constants.h.

Referenced by acip_send_ascii_frame_contract(), and client_validate_frame().

◆ FRAME_FLAG_IS_STRETCHED

#define FRAME_FLAG_IS_STRETCHED   0x08

#include <include/ascii-chat/common/protocol_constants.h>

Frame was stretched (aspect adjusted).

Definition at line 68 of file protocol_constants.h.

◆ FRAME_FLAG_RENDER_CONTRACT

#define FRAME_FLAG_RENDER_CONTRACT   0x10

#include <include/ascii-chat/common/protocol_constants.h>

Explicit versioned render contract precedes encoded ASCII text.

Definition at line 71 of file protocol_constants.h.

Referenced by acip_send_ascii_frame_contract(), and client_validate_frame().

◆ FRAME_FLAG_RLE_COMPRESSED

#define FRAME_FLAG_RLE_COMPRESSED   0x04

#include <include/ascii-chat/common/protocol_constants.h>

Frame data is RLE compressed.

Definition at line 65 of file protocol_constants.h.

◆ PIXEL_FORMAT_BGR

#define PIXEL_FORMAT_BGR   3

#include <include/ascii-chat/common/protocol_constants.h>

BGR pixel format.

Definition at line 84 of file protocol_constants.h.

Referenced by session_host_receive_packet().

◆ PIXEL_FORMAT_BGRA

#define PIXEL_FORMAT_BGRA   4

#include <include/ascii-chat/common/protocol_constants.h>

BGRA pixel format.

Definition at line 87 of file protocol_constants.h.

Referenced by session_host_receive_packet().

◆ PIXEL_FORMAT_RGB

#define PIXEL_FORMAT_RGB   1

#include <include/ascii-chat/common/protocol_constants.h>

Packed RGB24 pixel format used by ACIP image-frame senders.

Definition at line 78 of file protocol_constants.h.

Referenced by session_host_receive_packet().

◆ PIXEL_FORMAT_RGBA

#define PIXEL_FORMAT_RGBA   2

#include <include/ascii-chat/common/protocol_constants.h>

Packed RGBA32 pixel format.

Definition at line 81 of file protocol_constants.h.

Referenced by session_host_receive_packet().

◆ PROTOCOL_VERSION_MAJOR

◆ PROTOCOL_VERSION_MINOR

#define PROTOCOL_VERSION_MINOR   3

◆ PROTOCOL_VERSION_PATCH

#define PROTOCOL_VERSION_PATCH   0