MOQX.Protocol.MOQLite05.Codec (moqx v0.10.0)

Copy Markdown View Source

Payload codecs for MoQ Lite draft-05.

Summary

Functions

decode_announce_broadcast(data)

@spec decode_announce_broadcast(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.AnnounceBroadcast.t()}
  | {:error, :invalid_announce_broadcast}

decode_announce_ok(data)

@spec decode_announce_ok(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.AnnounceOk.t()}
  | {:error, :invalid_announce_ok}

decode_announce_request(data)

@spec decode_announce_request(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.AnnounceRequest.t()}
  | {:error, :invalid_announce_request}

decode_frame(data)

@spec decode_frame(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.Frame.t(), binary()} | :more

decode_group(data)

@spec decode_group(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.Group.t()} | {:error, :invalid_group}

decode_setup(data)

@spec decode_setup(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.Setup.t()} | {:error, :invalid_setup}

decode_subscribe(data)

@spec decode_subscribe(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.Subscribe.t()}
  | {:error, :invalid_subscribe}

decode_subscribe_responses(data)

@spec decode_subscribe_responses(binary()) ::
  {:ok,
   [
     MOQX.Protocol.MOQLite05.Messages.SubscribeOk.t()
     | MOQX.Protocol.MOQLite05.Messages.SubscribeEnd.t()
     | MOQX.Protocol.MOQLite05.Messages.SubscribeDrop.t()
   ], binary()}
  | {:error, :invalid_subscribe_response}

decode_subscribe_update(data)

@spec decode_subscribe_update(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.SubscribeUpdate.t()}
  | {:error, :invalid_subscribe_update}

decode_track(data)

@spec decode_track(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.Track.t()} | {:error, :invalid_track}

decode_track_info(data)

@spec decode_track_info(binary()) ::
  {:ok, MOQX.Protocol.MOQLite05.Messages.TrackInfo.t()}
  | {:error, :invalid_track_info}

encode_announce_broadcast(broadcast)

@spec encode_announce_broadcast(
  MOQX.Protocol.MOQLite05.Messages.AnnounceBroadcast.t()
) :: binary()

encode_announce_ok(ok)

@spec encode_announce_ok(MOQX.Protocol.MOQLite05.Messages.AnnounceOk.t()) :: binary()

encode_announce_request(request)

@spec encode_announce_request(MOQX.Protocol.MOQLite05.Messages.AnnounceRequest.t()) ::
  binary()

encode_frame(frame)

encode_group(group)

encode_setup(setup)

encode_subscribe(subscribe)

@spec encode_subscribe(MOQX.Protocol.MOQLite05.Messages.Subscribe.t()) :: binary()

encode_subscribe_response(drop)

encode_subscribe_update(update)

@spec encode_subscribe_update(MOQX.Protocol.MOQLite05.Messages.SubscribeUpdate.t()) ::
  binary()

encode_track(track)

encode_track_info(info)

@spec encode_track_info(MOQX.Protocol.MOQLite05.Messages.TrackInfo.t()) :: binary()