# moqx v0.8.1 - Table of Contents

> Elixir Media over QUIC library for MOQT drafts 14 and 16 and MoQ Lite draft 05.

## Pages

- [moqx](readme.md)
- [Changelog](changelog.md)

## Modules

- [MOQX](MOQX.md): Elixir Media over QUIC library.
- [MOQX.CMAF](MOQX.CMAF.md): Helpers for capturing and publishing catalog-advertised CMAF tracks.
- [MOQX.CMAF.Capture](MOQX.CMAF.Capture.md): Report for one completed CMAF capture.
- [MOQX.CMAF.Publication](MOQX.CMAF.Publication.md): Handles and counts for one prepared CMAF file publication.
- [MOQX.Catalog](MOQX.Catalog.md): A decoded Common Media Server Data Format catalog.
- [MOQX.Catalog.Track](MOQX.Catalog.Track.md): A track advertised by a decoded CMSF catalog.
- [MOQX.Client](MOQX.Client.md): Opaque handle for a process-owned MOQX connection.
- [MOQX.Codec](MOQX.Codec.md): Shared codec namespace for MOQT-family protocol implementations.
- [MOQX.Codec.Decoder](MOQX.Codec.Decoder.md): Behaviour for decoding complete payload binaries.
- [MOQX.Codec.Encoder](MOQX.Codec.Encoder.md): Protocol for encoding typed values into payload iodata.
- [MOQX.Event](MOQX.Event.md): Typed application-facing events emitted by a `MOQX.Client`.
- [MOQX.Event.CatalogReceived](MOQX.Event.CatalogReceived.md): A catalog object was decoded.
- [MOQX.Event.ConnectionClosed](MOQX.Event.ConnectionClosed.md): The transport connection closed.
- [MOQX.Event.ObjectReceived](MOQX.Event.ObjectReceived.md): A subscribed object was received.
- [MOQX.Event.ObjectStatus](MOQX.Event.ObjectStatus.md): A subscribed object-status marker was received.
- [MOQX.Event.ProtocolFailed](MOQX.Event.ProtocolFailed.md): The selected protocol implementation failed.
- [MOQX.Event.PublicationCancelled](MOQX.Event.PublicationCancelled.md): A relay cancelled an active namespace publication.
- [MOQX.Event.PublicationFailed](MOQX.Event.PublicationFailed.md): A namespace publication was rejected.
- [MOQX.Event.PublicationReady](MOQX.Event.PublicationReady.md): A namespace publication was accepted.
- [MOQX.Event.PublicationSubscriberJoined](MOQX.Event.PublicationSubscriberJoined.md): A remote subscriber joined a published track.
- [MOQX.Event.PublicationSubscriberLeft](MOQX.Event.PublicationSubscriberLeft.md): A remote subscriber left a published track.
- [MOQX.Event.PublicationSubscriptionCancelled](MOQX.Event.PublicationSubscriptionCancelled.md): A pending inbound publisher subscription can no longer be decided.
- [MOQX.Event.PublicationSubscriptionRequested](MOQX.Event.PublicationSubscriptionRequested.md): An inbound publisher subscription is waiting for an application decision.
- [MOQX.Event.PublicationTrackFailed](MOQX.Event.PublicationTrackFailed.md): A published track request was rejected while its namespace remains active.
- [MOQX.Event.SubgroupEnded](MOQX.Event.SubgroupEnded.md): One subscribed subgroup stream ended after all preceding object events.
- [MOQX.Event.SubscriptionAccepted](MOQX.Event.SubscriptionAccepted.md): The relay accepted a subscription.
- [MOQX.Event.SubscriptionDone](MOQX.Event.SubscriptionDone.md): A subscription reached its terminal state after delivery draining.
- [MOQX.Event.SubscriptionFailed](MOQX.Event.SubscriptionFailed.md): The relay rejected a subscription.
- [MOQX.Event.SubscriptionUpdateFailed](MOQX.Event.SubscriptionUpdateFailed.md): The relay rejected a subscription update while leaving the subscription active.
- [MOQX.Event.SubscriptionUpdated](MOQX.Event.SubscriptionUpdated.md): The relay accepted a subscription parameter update.
- [MOQX.Extension](MOQX.Extension.md): Protocol-specific extension information retained losslessly at a public boundary.
- [MOQX.Object](MOQX.Object.md): One protocol-neutral media object.
- [MOQX.Operation](MOQX.Operation.md): Protocol-neutral application intent accepted by a protocol implementation.
- [MOQX.Operation.AcceptPublicationSubscription](MOQX.Operation.AcceptPublicationSubscription.md): Accepts one pending inbound publisher subscription.
- [MOQX.Operation.AddTrack](MOQX.Operation.AddTrack.md): Registers one track under an active publication.
- [MOQX.Operation.Close](MOQX.Operation.Close.md): Requests graceful connection shutdown.
- [MOQX.Operation.FinishPublication](MOQX.Operation.FinishPublication.md): Gracefully withdraws a namespace publication.
- [MOQX.Operation.FinishPublishedSubscription](MOQX.Operation.FinishPublishedSubscription.md): Finishes one accepted inbound publisher subscription.
- [MOQX.Operation.Publish](MOQX.Operation.Publish.md): Advertises one application-level track namespace.
- [MOQX.Operation.PublishObject](MOQX.Operation.PublishObject.md): Publishes one protocol-neutral object on a registered track.
- [MOQX.Operation.RejectPublicationSubscription](MOQX.Operation.RejectPublicationSubscription.md): Rejects one pending inbound publisher subscription.
- [MOQX.Operation.Subscribe](MOQX.Operation.Subscribe.md): Subscribes to one application-level track address.
- [MOQX.Operation.Unsubscribe](MOQX.Operation.Unsubscribe.md): Ends one subscription created through the public API.
- [MOQX.Operation.UpdateSubscription](MOQX.Operation.UpdateSubscription.md): Updates the parameters or object boundary of an active subscription.
- [MOQX.Operation.WithdrawTrack](MOQX.Operation.WithdrawTrack.md): Withdraws one registered published track without ending its publication.
- [MOQX.Protocol](MOQX.Protocol.md): Contract between the protocol-neutral connection runtime and one concrete
MOQT-family protocol implementation.
- [MOQX.Protocol.Capabilities](MOQX.Protocol.Capabilities.md): Inspectable feature surface exposed by one protocol implementation.
- [MOQX.Protocol.CloudflareDraft14](MOQX.Protocol.CloudflareDraft14.md): Cloudflare's deployed MOQT draft-14 lifecycle and catalog convention.
- [MOQX.Protocol.CloudflareDraft14.Session](MOQX.Protocol.CloudflareDraft14.Session.md): Compatibility namespace for the Cloudflare draft-14 lifecycle state machine.
- [MOQX.Protocol.Draft16](MOQX.Protocol.Draft16.md): Standard MOQT draft-16 subscriber implementation.
- [MOQX.Protocol.MOQLite05](MOQX.Protocol.MOQLite05.md): MoQ Lite draft-05 over native QUIC.
- [MOQX.Protocol.MOQLite05.Codec](MOQX.Protocol.MOQLite05.Codec.md): Payload codecs for MoQ Lite draft-05.
- [MOQX.Protocol.MOQLite05.GroupDecoder](MOQX.Protocol.MOQLite05.GroupDecoder.md): Incremental decoder for one publisher-created Group Stream.
- [MOQX.Protocol.MOQLite05.Messages](MOQX.Protocol.MOQLite05.Messages.md): Semantic wire messages for MoQ Lite draft-05.
- [MOQX.Protocol.MOQLite05.Messages.AnnounceBroadcast](MOQX.Protocol.MOQLite05.Messages.AnnounceBroadcast.md): One broadcast availability update on an Announce Stream.
- [MOQX.Protocol.MOQLite05.Messages.AnnounceOk](MOQX.Protocol.MOQLite05.Messages.AnnounceOk.md): Publisher identity and initial announcement count.
- [MOQX.Protocol.MOQLite05.Messages.AnnounceRequest](MOQX.Protocol.MOQLite05.Messages.AnnounceRequest.md): Subscriber interest in broadcasts under one path prefix.
- [MOQX.Protocol.MOQLite05.Messages.Frame](MOQX.Protocol.MOQLite05.Messages.Frame.md): One length-delimited payload with a signed track-timescale timestamp delta.
- [MOQX.Protocol.MOQLite05.Messages.Group](MOQX.Protocol.MOQLite05.Messages.Group.md): Header that identifies one published group and its subscription.
- [MOQX.Protocol.MOQLite05.Messages.Setup](MOQX.Protocol.MOQLite05.Messages.Setup.md): Capabilities and client routing intent sent on the Setup Stream.
- [MOQX.Protocol.MOQLite05.Messages.Subscribe](MOQX.Protocol.MOQLite05.Messages.Subscribe.md): Subscriber request that opens a Subscribe Stream.
- [MOQX.Protocol.MOQLite05.Messages.SubscribeDrop](MOQX.Protocol.MOQLite05.Messages.SubscribeDrop.md): Publisher declaration that an absolute group range is unavailable.
- [MOQX.Protocol.MOQLite05.Messages.SubscribeEnd](MOQX.Protocol.MOQLite05.Messages.SubscribeEnd.md): Publisher declaration of the last group that may be delivered.
- [MOQX.Protocol.MOQLite05.Messages.SubscribeOk](MOQX.Protocol.MOQLite05.Messages.SubscribeOk.md): Publisher acceptance and resolved first group for a subscription.
- [MOQX.Protocol.MOQLite05.Messages.SubscribeUpdate](MOQX.Protocol.MOQLite05.Messages.SubscribeUpdate.md): Mutable subscriber delivery preferences sent on a Subscribe Stream.
- [MOQX.Protocol.MOQLite05.Messages.Track](MOQX.Protocol.MOQLite05.Messages.Track.md): Request for one track's immutable publisher properties.
- [MOQX.Protocol.MOQLite05.Messages.TrackInfo](MOQX.Protocol.MOQLite05.Messages.TrackInfo.md): Immutable publisher properties returned on a Track Stream.
- [MOQX.Protocol.MOQLite05.StreamType](MOQX.Protocol.MOQLite05.StreamType.md): Numeric stream type registry for MoQ Lite draft-05.
- [MOQX.Protocol.MOQTDraft14](MOQX.Protocol.MOQTDraft14.md): Versioned reusable wire package for IETF MOQT draft-14.
- [MOQX.Protocol.MOQTDraft14.Codec](MOQX.Protocol.MOQTDraft14.Codec.md): Wire primitives and message codecs shared by draft-14 implementations.
- [MOQX.Protocol.MOQTDraft14.Messages](MOQX.Protocol.MOQTDraft14.Messages.md): Namespace for semantic IETF MOQT draft-14 wire message structs.
- [MOQX.Protocol.MOQTDraft14.Messages.ClientSetup](MOQX.Protocol.MOQTDraft14.Messages.ClientSetup.md): MOQT draft-14 CLIENT_SETUP message.
- [MOQX.Protocol.MOQTDraft14.Messages.PublishDone](MOQX.Protocol.MOQTDraft14.Messages.PublishDone.md): MOQT draft-14 PUBLISH_DONE message.
- [MOQX.Protocol.MOQTDraft14.Messages.PublishNamespace](MOQX.Protocol.MOQTDraft14.Messages.PublishNamespace.md): MOQT draft-14 PUBLISH_NAMESPACE message.
- [MOQX.Protocol.MOQTDraft14.Messages.PublishNamespaceCancel](MOQX.Protocol.MOQTDraft14.Messages.PublishNamespaceCancel.md): MOQT draft-14 PUBLISH_NAMESPACE_CANCEL message.
- [MOQX.Protocol.MOQTDraft14.Messages.PublishNamespaceDone](MOQX.Protocol.MOQTDraft14.Messages.PublishNamespaceDone.md): MOQT draft-14 PUBLISH_NAMESPACE_DONE message.
- [MOQX.Protocol.MOQTDraft14.Messages.PublishNamespaceError](MOQX.Protocol.MOQTDraft14.Messages.PublishNamespaceError.md): MOQT draft-14 PUBLISH_NAMESPACE_ERROR message.
- [MOQX.Protocol.MOQTDraft14.Messages.PublishNamespaceOk](MOQX.Protocol.MOQTDraft14.Messages.PublishNamespaceOk.md): MOQT draft-14 PUBLISH_NAMESPACE_OK message.
- [MOQX.Protocol.MOQTDraft14.Messages.ServerSetup](MOQX.Protocol.MOQTDraft14.Messages.ServerSetup.md): MOQT draft-14 SERVER_SETUP message.
- [MOQX.Protocol.MOQTDraft14.Messages.SubgroupHeader](MOQX.Protocol.MOQTDraft14.Messages.SubgroupHeader.md): MOQT draft-14 subgroup stream header.
- [MOQX.Protocol.MOQTDraft14.Messages.SubgroupObject](MOQX.Protocol.MOQTDraft14.Messages.SubgroupObject.md): One object decoded from a MOQT draft-14 subgroup stream.
- [MOQX.Protocol.MOQTDraft14.Messages.Subscribe](MOQX.Protocol.MOQTDraft14.Messages.Subscribe.md): MOQT draft-14 SUBSCRIBE message.
- [MOQX.Protocol.MOQTDraft14.Messages.SubscribeError](MOQX.Protocol.MOQTDraft14.Messages.SubscribeError.md): MOQT draft-14 SUBSCRIBE_ERROR message.
- [MOQX.Protocol.MOQTDraft14.Messages.SubscribeOk](MOQX.Protocol.MOQTDraft14.Messages.SubscribeOk.md): MOQT draft-14 SUBSCRIBE_OK message.
- [MOQX.Protocol.MOQTDraft14.Messages.Unsubscribe](MOQX.Protocol.MOQTDraft14.Messages.Unsubscribe.md): MOQT draft-14 UNSUBSCRIBE message.
- [MOQX.Protocol.MOQTDraft14.SubgroupDecoder](MOQX.Protocol.MOQTDraft14.SubgroupDecoder.md): Incremental decoder for one draft-14 subgroup stream.
- [MOQX.Protocol.MOQTDraft16.Codec](MOQX.Protocol.MOQTDraft16.Codec.md): Wire primitives for the standard MOQT draft-16 implementation.
- [MOQX.Protocol.MOQTDraft16.SubgroupDecoder](MOQX.Protocol.MOQTDraft16.SubgroupDecoder.md): Incremental decoder for one MOQT draft-16 subgroup stream.
- [MOQX.Protocol.Resolver](MOQX.Protocol.Resolver.md): Resolves an explicit protocol selection to its implementation module.
- [MOQX.Protocol.Transition](MOQX.Protocol.Transition.md): One pure protocol transition returned to the connection runtime.
- [MOQX.Protocol.TransportSpec](MOQX.Protocol.TransportSpec.md): Transport requirements selected by a concrete protocol implementation.
- [MOQX.ProtocolError](MOQX.ProtocolError.md): Application-facing error returned by one selected protocol implementation.
- [MOQX.Publication](MOQX.Publication.md): Opaque handle for one protocol-neutral published namespace.
- [MOQX.PublicationSubscriptionRequest](MOQX.PublicationSubscriptionRequest.md): Inspectable application request for an inbound publisher subscription.
- [MOQX.PublishedSubscription](MOQX.PublishedSubscription.md): Opaque handle for one accepted inbound publisher subscription.
- [MOQX.PublishedTrack](MOQX.PublishedTrack.md): Opaque handle for a track registered under a publication.
- [MOQX.Runtime.ConnectionDriver](MOQX.Runtime.ConnectionDriver.md): Process-owned bridge between one protocol implementation and `MOQX.Transport`.
- [MOQX.Secret](MOQX.Secret.md): Explicit secret value whose inspection is always redacted.
- [MOQX.Subscription](MOQX.Subscription.md): Public handle for one active track subscription.
- [MOQX.Subscription.Completion](MOQX.Subscription.Completion.md): The terminal result of a remote subscription.
- [MOQX.SubscriptionFilter](MOQX.SubscriptionFilter.md): Protocol-neutral object boundary requested for an inbound subscription.
- [MOQX.SubscriptionParameter](MOQX.SubscriptionParameter.md): Protocol-neutral parameters attached to an inbound subscription request.
- [MOQX.SubscriptionParameter.Authorization](MOQX.SubscriptionParameter.Authorization.md): Authorization material supplied with an inbound subscription.
- [MOQX.SubscriptionParameter.DeliveryTimeout](MOQX.SubscriptionParameter.DeliveryTimeout.md): Requested object delivery timeout in milliseconds.
- [MOQX.SubscriptionParameter.Expires](MOQX.SubscriptionParameter.Expires.md): Relative subscription expiry in milliseconds.
- [MOQX.SubscriptionParameter.Extension](MOQX.SubscriptionParameter.Extension.md): Unrecognized protocol-specific subscription parameter retained losslessly.
- [MOQX.SubscriptionParameter.GroupOrder](MOQX.SubscriptionParameter.GroupOrder.md): Publisher group order selected for a subscription.
- [MOQX.SubscriptionParameter.LargestObject](MOQX.SubscriptionParameter.LargestObject.md): Largest object location reported when a subscription is accepted.
- [MOQX.SubscriptionRejection](MOQX.SubscriptionRejection.md): Protocol-neutral reason for rejecting an inbound publisher subscription.
- [MOQX.Testing.Transport](MOQX.Testing.Transport.md): Deterministic in-memory transport for downstream MOQX tests.
- [MOQX.TrackInfo](MOQX.TrackInfo.md): Protocol-neutral immutable publisher properties for one received track.
- [MOQX.TrackRef](MOQX.TrackRef.md): Protocol-neutral application address for one media track.
- [MOQX.Transport](MOQX.Transport.md): QUIC transport boundary for MOQT-family implementations.
- [MOQX.Transport.BackendRef](MOQX.Transport.BackendRef.md): Opaque backend payload carried by transport contexts and handles.
- [MOQX.Transport.Capabilities](MOQX.Transport.Capabilities.md): Normalized transport capability report for a negotiated connection.

- [MOQX.Transport.Conn](MOQX.Transport.Conn.md): Opaque QUIC connection handle returned by `MOQX.Transport`.

- [MOQX.Transport.Conn.Stream](MOQX.Transport.Conn.Stream.md): Opaque QUIC stream handle returned by `MOQX.Transport`.

- [MOQX.Transport.Conn.Stream.Info](MOQX.Transport.Conn.Stream.Info.md): Stable metadata for one QUIC stream from local endpoint perspective.

- [MOQX.Transport.Conn.Stream.Send](MOQX.Transport.Conn.Stream.Send.md): Transport send request accepted by a backend.
- [MOQX.Transport.Conn.Stream.Sender](MOQX.Transport.Conn.Stream.Sender.md): Functional sender-side state for one QUIC stream.
- [MOQX.Transport.Context](MOQX.Transport.Context.md): Caller-owned immutable transport context.
- [MOQX.Transport.Listener](MOQX.Transport.Listener.md): Opaque listener handle returned by `MOQX.Transport.listen/3`.

- [MOQX.Transport.Profile](MOQX.Transport.Profile.md): Transport profile fixtures for MOQT-family tests and benchmarks.
- [MOQX.Transport.Quicer](MOQX.Transport.Quicer.md): `MOQX.Transport` implementation backed by `quicer`.
- [MOQX.Transport.Quicer.Options](MOQX.Transport.Quicer.Options.md): Pure normalization helpers for values passed from Elixir into `quicer`.

- Exceptions
  - [MOQX.Catalog.Error](MOQX.Catalog.Error.md): A typed catalog validation error with a path to the invalid field.

