|
ascii-chat 0.8.38
Real-time terminal-based video chat with ASCII art conversion
|
Go to the source code of this file.
Data Structures | |
| struct | webrtc_recv_msg_t |
| Receive queue element (variable-length message) More... | |
| struct | webrtc_transport_data_t |
| WebRTC transport implementation data. More... | |
Macros | |
| #define | WEBRTC_RECV_QUEUE_SIZE 512 |
| Maximum receive queue size (messages buffered before recv()) | |
Functions | |
| acip_transport_t * | acip_webrtc_transport_create (webrtc_peer_connection_t *peer_conn, webrtc_data_channel_t *data_channel, crypto_context_t *crypto_ctx) |
| #define WEBRTC_RECV_QUEUE_SIZE 512 |
Maximum receive queue size (messages buffered before recv())
Power of 2 for ringbuffer optimization. 512 messages provides adequate buffering for large video frames (921KB each) with WebRTC DataChannel fragmentation. At 30 FPS: 512 / 30 = ~17 seconds of buffering for burst traffic and processing delays.
Definition at line 47 of file webrtc/transport.c.
| acip_transport_t * acip_webrtc_transport_create | ( | webrtc_peer_connection_t * | peer_conn, |
| webrtc_data_channel_t * | data_channel, | ||
| crypto_context_t * | crypto_ctx | ||
| ) |
Definition at line 367 of file webrtc/transport.c.
References webrtc_transport_data_t::data_channel, webrtc_transport_data_t::is_connected, mutex_destroy(), mutex_init(), webrtc_transport_data_t::peer_conn, webrtc_transport_data_t::queue_cond, webrtc_transport_data_t::queue_mutex, webrtc_transport_data_t::recv_queue, ringbuffer_create(), ringbuffer_destroy(), webrtc_transport_data_t::state_mutex, webrtc_datachannel_set_callbacks(), webrtc_datachannel_set_open_state(), and WEBRTC_RECV_QUEUE_SIZE.