ascii-chat
Binary v0.15.83-53-gb711d8720
Library lib/v0.3.2-701-gb711d8720
Video chat in your terminal
Loading...
Searching...
No Matches
include/ascii-chat/network/acip/client.h
Go to the documentation of this file.
1
16
17#ifndef NETWORK_ACIP_CLIENT_H
18#define NETWORK_ACIP_CLIENT_H
19
25
26#ifdef __cplusplus
27extern "C" {
28#endif
29
30// =============================================================================
31// Client Receive API
32// =============================================================================
33
34/* Receive and decrypt one packet with the same envelope checks as dispatch.
35 * On success the caller owns envelope->allocated_buffer and must buffer_release it.
36 * On failure no allocation is transferred to the caller. */
38
51 const acip_client_callbacks_t *callbacks);
52
53// =============================================================================
54// Client Send API (client → server)
55// =============================================================================
56
70 uint32_t height, uint32_t pixel_format);
71
96 const void *pixel_data, uint32_t width, uint32_t height);
97
108
119
130asciichat_error_t acip_send_capabilities(acip_transport_t *transport, const void *cap_data, size_t cap_len);
131
142
143#ifdef __cplusplus
144}
145#endif
146
147#endif // NETWORK_ACIP_CLIENT_H
Synchronized per-thread pending error stacks and value snapshots. SET_ERRNO pushes,...
struct h265_encoder h265_encoder_t
h265 encoder is intentionally a small, concrete record. Fields such as codec_ctx, codec,...
HEVC/H.265 encoder for ASCII art frames using libx265.
unsigned int height
Definition fft.c:23
unsigned int width
Definition fft.c:23
unsigned int uint32_t
Definition common.h:62
unsigned char uint8_t
Definition common.h:60
asciichat_error_t
Error and exit codes - unified status values (0-255).
Definition error_codes.h:44
struct acip_transport acip_transport_t
Forward declaration of ACIP transport.
Definition host.h:506
ACIP protocol packet handlers (transport-agnostic).
asciichat_error_t acip_send_image_frame(acip_transport_t *transport, const void *pixel_data, uint32_t width, uint32_t height, uint32_t pixel_format)
Send image frame to server (client → server).
asciichat_error_t acip_send_stream_stop(acip_transport_t *transport, uint8_t stream_types)
Request to stop media streaming (client → server).
asciichat_error_t acip_client_receive_and_dispatch(acip_transport_t *transport, const acip_client_callbacks_t *callbacks)
Receive packet from server and dispatch to callbacks.
asciichat_error_t acip_send_stream_start(acip_transport_t *transport, uint8_t stream_types)
Request to start media streaming (client → server).
asciichat_error_t acip_send_capabilities(acip_transport_t *transport, const void *cap_data, size_t cap_len)
Send terminal capabilities to server (client → server).
asciichat_error_t acip_send_protocol_version(acip_transport_t *transport, const protocol_version_packet_t *version)
Send protocol version to server (client → server).
asciichat_error_t acip_client_receive_packet(acip_transport_t *transport, packet_envelope_t *envelope)
asciichat_error_t acip_send_image_frame_h265(acip_transport_t *transport, h265_encoder_t *encoder, const void *pixel_data, uint32_t width, uint32_t height)
Send H.265-encoded video frame to server (client → server).
Transport abstraction layer for ACIP protocol.
Client-side packet handler callbacks.
Definition handlers.h:51
Packet envelope containing received packet data.
Definition packet.h:1185
Protocol version negotiation packet structure (Packet Type 1).
Definition packet.h:860