Skip to main content

openipc_core/
lib.rs

1//! Shared OpenIPC FPV receiver logic.
2//!
3//! Native and WebAssembly frontends feed bytes into these parsers and keep their
4//! platform-specific device code at the edge.
5
6pub mod adaptive;
7pub mod channel;
8pub mod crypto;
9pub mod fec;
10pub mod ieee80211;
11pub mod pipeline;
12pub mod radiotap;
13pub mod realtek;
14pub mod realtek_tx;
15pub mod rtp;
16pub mod wfb;
17pub mod wfb_tx;
18
19pub use adaptive::{AdaptiveLink, AdaptiveLinkSender, LinkQuality};
20pub use channel::{ChannelId, RadioPort};
21pub use fec::{FecCode, FecError};
22pub use ieee80211::{FrameLayout, WifiFrame};
23pub use pipeline::{
24    PayloadPipeline, PayloadPipelineEvent, PipelineEvent, ReceiverPipeline, RecoveredPayload,
25};
26pub use radiotap::{
27    build_stream_radiotap, parse_tx_mode_str, ChannelBandwidth, TxMode, TxModeKind, TxRadioParams,
28    FRAME_TYPE_DATA, FRAME_TYPE_RTS,
29};
30pub use realtek::{parse_rx_aggregate, RealtekRxPacket, RxPacketAttrib};
31pub use realtek_tx::{build_usb_tx_frame, RealtekTxOptions};
32pub use rtp::{Codec, DepacketizedFrame, RtpDepacketizer, RtpHeader};
33pub use wfb::{
34    FecCounters, PlainAssembler, WfbKeypair, WfbOutput, WfbPacket, WfbReceiver, WfbSession,
35};
36pub use wfb_tx::{WfbTransmitter, WfbTxKeypair};