Input, audio, media & services

CNA snapshot 009d40f5  ·  Deep Dives › Input, audio, media & services  ·  source links pinned to 009d40f5

✓

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.