Input, audio, media & services
Evidence basis: source-verified at the pinned commit. Claims on this page were checked by reading the CNA source at commit 009d40f5; unless a sentence says otherwise, nothing here was built or executed.
Input, audio, media and video, sensors, host devices, gamer services, storage, networking and avatars: contracts, lifecycles, platform differences and limits.
Pages in this group
- GamerServices behaviour contract — What CNA's GamerServices does without Xbox LIVE: the four local identities, persisted achievements and leaderboards, the Guide dialogs the game draws, the inert members and the dispatcher hang.
- Network sessions and the SystemLink protocol — What each NetworkSessionType really does in CNA, the SystemLink wire and discovery protocols, the trust model, delivery guarantees, host migration and the evidence behind them.
- Avatars: the inert XNA API and the skinned extension — Why CNA's XNA avatar classes report Unavailable and draw nothing, and how the opt-in SkinnedModelEXT path samples clips, builds the bone palette, tints parts and loads its content.
- The input model: snapshots, keys, the mouse and logical coordinates — What Keyboard and Mouse GetState return and when, the Keys numbering and layout helpers, the mouse extensions and cursors, and how renderers map window pixels to logical coordinates.
- Gamepads, joysticks, haptics and host power — How CNA maps controllers to the four XNA slots, normalizes and dead-zones axes, what each GamePad extension does, and how the joystick, haptics, power and sensor classes of CNA::Input behave.
- Touch panel and gesture semantics — When CNA's touch state advances, which connected flag to trust, TouchCollection and TouchLocation contracts, gesture filtering, timestamps and the deliberate differences from FNA.
- Text input and IME composition — The exact TextInputEXT contract in CNA: committed text, IME composition and candidate events, the window-bound text mode, the input-type hint, composition placement and the clipboard classes.
- Sound effects, streaming, capture and the audio evidence — Caller-visible semantics of SoundEffect, 3D audio, XNB sound decoding, DynamicSoundEffectInstance buffer accounting and Microphone capture in CNA, and what the audio tests do and do not prove.
- XACT at run time: engine, banks, cues and their limits — The run-time contract of CNA's XACT classes: load failures, cue ownership and registration, AudioEngine::Update, variations, RPC curves, categories, instance limits, filters and wave banks.
- Songs, the media library and video: the public contract — The caller-visible contract of CNA's Song, MediaLibrary, MediaPlayer, visualization data and VideoPlayer, including where file extensions and decoders disagree and how video availability changed.
- Sensors and vibration: delivery, math and lifetime — Which thread delivers a CNA sensor reading and in which units, the Android compass and motion mathematics, the landscape remap, VibrateController semantics, the open Dispose(bool) defect and the evidence limits.
- Host devices: the optional CNA::Devices layer — The CNA_DEVICES build contract, what each CNA::Devices class really does, its platform reach, the overlap with CNA::Input, the camera polling model and the callback boundary callers must respect.