ArtNet. Packet. ArtMediaPatch
(ArtNet v0.1.0)
View Source
Sends media patch information to a media server.
Controllers use this packet to map media server layers and outputs for Art-Net media extensions.
Packet layout
| Part | Field | Description | Default | Size | Format |
|---|---|---|---|---|---|
| Header | id | fixed | 8 bytes | "Art-Net\\0" | |
| Header | op_code | 0x9100 | 2 bytes | little-endian OpCode | |
| Header | prot_ver | 14 | 2 bytes | protocol version | |
| Payload | filler1 | Reserved byte, transmitted as zero. | 0 | 1 byte | unsigned integer (8 bits) |
| Payload | filler2 | Reserved byte, transmitted as zero. | 0 | 1 byte | unsigned integer (8 bits) |
| Payload | filler3 | Reserved byte, transmitted as zero. | 0 | 1 byte | unsigned integer (8 bits) |
| Payload | filler4 | Reserved byte, transmitted as zero. | 0 | 1 byte | unsigned integer (8 bits) |
| Payload | stream | Media stream identifier. | required | 1 byte | unsigned integer (8 bits) |
| Payload | patch_command | Media patch command code. | required | 1 byte | unsigned integer (8 bits) |
| Payload | virtual_delta_x | Virtual X coordinate delta. | required | 2 bytes | unsigned integer (16 bits) |
| Payload | virtual_delta_y | Virtual Y coordinate delta. | required | 2 bytes | unsigned integer (16 bits) |
| Payload | coordinate_count | Number of coordinate entries in the payload. | required | 2 bytes | unsigned integer (16 bits) |
| Payload | aperture | Patch aperture value. | required | 1 byte | unsigned integer (8 bits) |
| Payload | diameter | Patch diameter value. | required | 1 byte | unsigned integer (8 bits) |
| Payload | coordinates | Packed media patch coordinate data. | required | variable (1 byte each) | list of unsigned integer (8 bits) |
Summary
Functions
Decodes a complete Art-Net binary as this packet type.
Encodes this packet struct into a complete Art-Net binary.
Builds a validated packet struct from a map or keyword list.
Builds a validated packet struct from a map or keyword list.
Returns the Art-Net OpCode value for this packet module.
Returns whether this packet includes the Art-Net protocol version header.
Returns the packet payload schema in declaration order.
Types
@type t() :: %ArtNet.Packet.ArtMediaPatch{
aperture: :integer,
coordinate_count: :integer,
coordinates: [:integer],
diameter: :integer,
filler1: :integer,
filler2: :integer,
filler3: :integer,
filler4: :integer,
patch_command: :integer,
stream: :integer,
virtual_delta_x: :integer,
virtual_delta_y: :integer
}
Functions
Decodes a complete Art-Net binary as this packet type.
Encodes this packet struct into a complete Art-Net binary.
@spec new(map() | Keyword.t()) :: {:ok, t()} | {:error, ArtNet.EncodeError.t()}
Builds a validated packet struct from a map or keyword list.
Builds a validated packet struct from a map or keyword list.
Raises ArtNet.EncodeError when validation fails.
@spec op_code() :: pos_integer()
Returns the Art-Net OpCode value for this packet module.
The OpCode is 0x9100.
@spec require_version_header?() :: boolean()
Returns whether this packet includes the Art-Net protocol version header.
Returns the packet payload schema in declaration order.