Skip to main content

Crate openipc_core

Crate openipc_core 

Source
Expand description

Shared OpenIPC FPV receiver logic.

Native and WebAssembly frontends feed bytes into these parsers and keep their platform-specific device code at the edge.

Re-exports§

pub use adaptive::AdaptiveLinkSender;
pub use adaptive::LinkQuality;
pub use channel::ChannelId;
pub use channel::RadioPort;
pub use diversity::DiversityCombiner;
pub use diversity::DiversityDecision;
pub use diversity::DiversitySourceId;
pub use diversity::DiversitySourceStats;
pub use diversity::DiversityStats;
pub use fec::FecCode;
pub use fec::FecError;
pub use ieee80211::FrameLayout;
pub use ieee80211::WifiFrame;
pub use mock::MockRtpFrame;
pub use mock::MockRtpPipeline;
pub use pipeline::MockPayloadPipeline;
pub use pipeline::PayloadPipeline;
pub use pipeline::PayloadPipelineEvent;
pub use pipeline::RecoveredPayload;
pub use radiotap::build_stream_radiotap;
pub use radiotap::parse_tx_mode_str;
pub use radiotap::ChannelBandwidth;
pub use radiotap::TxMode;
pub use radiotap::TxModeKind;
pub use radiotap::TxRadioParams;
pub use radiotap::FRAME_TYPE_DATA;
pub use radiotap::FRAME_TYPE_RTS;
pub use realtek::parse_rx_aggregate;
pub use realtek::parse_rx_aggregate_with_kind;
pub use realtek::RealtekRxPacket;
pub use realtek::RxDescriptorKind;
pub use realtek::RxPacketAttrib;
pub use receiver::ReceiverBatch;
pub use receiver::ReceiverBatchCounters;
pub use receiver::ReceiverBatchOptions;
pub use receiver::ReceiverRuntime;
pub use receiver::RoutePayload;
pub use receiver::RtpPayloadTap;
pub use routes::PayloadChannelRuntime;
pub use routes::PayloadRouteError;
pub use routes::PayloadRouteEvent;
pub use routes::PayloadRouteId;
pub use routes::PayloadRouteManager;
pub use routes::PayloadRuntimeKey;
pub use rtp::Codec;
pub use rtp::CodecConfigState;
pub use rtp::DepacketizedFrame;
pub use rtp::RtpDepacketizer;
pub use rtp::RtpDepacketizerStatus;
pub use rtp::RtpHeader;
pub use rtp::RtpReorderBuffer;
pub use rtp::RtpReorderStatus;
pub use wfb::FecCounters;
pub use wfb::PlainAssembler;
pub use wfb::WfbKeypair;
pub use wfb::WfbOutput;
pub use wfb::WfbPacket;
pub use wfb::WfbReceiver;
pub use wfb::WfbSession;
pub use wfb_tx::WfbTransmitter;
pub use wfb_tx::WfbTxKeypair;

Modules§

adaptive
Adaptive-link quality estimation and WFB feedback TX helpers.
channel
OpenIPC/WFB link and channel identifiers.
crypto
Legacy WFB ChaCha20-Poly1305 compatibility helpers.
diversity
First-valid-copy packet diversity for multiple receive adapters. Packet-selection diversity for multiple independent receive radios.
fec
Reed-Solomon forward-error-correction helpers.
ieee80211
Minimal 802.11 frame parsing and construction helpers.
mock
Synthetic RTP source for no-hardware development.
pipeline
Single-channel WFB payload recovery pipeline.
radiotap
Radiotap TX metadata builders and parsers.
realtek
Realtek USB RX aggregate parsing.
receiver
Higher-level receive runtime for video and payload routes.
routes
Multi-route raw payload fanout manager.
rtp
RTP parsing and H.264/H.265 depacketization.
wfb
WFB packet, session, crypto, and FEC assembly logic.
wfb_tx
WFB uplink packet transmitter.