Pacote Swift para macOS, iOS e tvOS para enviar dados DMX sACN (E1.31) por UDP usando Network.framework
.
Você só precisa iniciar uma Connection
para um universo e começar a enviar dados DMX.
let connection = Connection ( universe : 1 )
connection . sendDMXData ( Data ( [ 0 , 10 , 255 , 0 , 0 , 0 , 255 ] ) )
Se quiser usar UDP Unicast em vez de Multicast, você pode simplesmente especificar um endpoint:
let connection = Connection ( endpoint : . hostPort ( host : " 192.168.2.102 " , . sACN ) , universe : 2 )
connection . sendDMXData ( Data ( [ 0 , 10 , 255 , 0 , 0 , 0 , 255 ] ) )
Foundation
e Network.framework
Para Unicast, você precisa especificar um endpoint IPv6. Para Multicast, você precisa especificar a versão do IP que deseja usar:
let connection = Connection ( universe : 1 , ipVersion : . v6 )
Depois de criar uma connection
, você pode definir a prioridade por pacote usando o método Connection.sendDMXData(_:priority:isPreviewData:)
. A prioridade padrão é 100
.
connection . sendDMXData ( data , priority : 200 )
Depois de criar uma connection
, você pode escolher por pacote se são dados de visualização ou não usando o método Connection.sendDMXData(_:priority:isPreviewData:)
. O padrão de isPreviewData
é false
.
connection . sendDMXData ( data , isPreviewData : true )
Connection
oferece suporte à personalização da porta, do identificador de componente (CID), do nome da origem, DispatchQueue
e NWConneciton.Parameter
. Consulte a documentação para obter mais informações.
public convenience init (
universe : UInt16 ,
ipVersion : IPVersion = . v4 ,
port : NWEndpoint . Port = . sACN ,
cid : UUID = . init ( ) ,
sourceName : String = getDeviceName ( ) ,
queue : DispatchQueue ? = nil ,
parameters : NWParameters ? = nil
)