Java 및 프로세싱을 위한 Art-Net DMX over IP 라이브러리. 이 라이브러리는 기존 artnet4j 프로젝트에 많은 기능을 추가합니다. dmx 데이터 읽기 지원을 포함합니다.
OpDmx
패키지를 수신하는 기능이 추가되었습니다.8
및 11
(oracle 및 openjdk) 지원 Maven Central에서 설치하는 것이 좋습니다. 그렇지 않으면 github 패키지, jitpack.io 또는 바이너리 다운로드를 사용할 수도 있습니다.
< dependency >
< groupId >ch.bildspur</ groupId >
< artifactId >artnet4j</ artifactId >
< version >0.6.2</ version >
</ dependency >
repositories {
mavenCentral()
}
dependencies {
compile ' ch.bildspur:artnet4j:0.6.2 '
}
라이브러리는 기본 Art-Net 구현에 쉽게 액세스할 수 있는 ArtNetClient
라는 새 클래스를 추가합니다.
dmx 데이터를 보내려면 새 클라이언트를 만들어야 합니다. 생성자에 null
전달하면 버퍼 생성을 건너뛸 수 있습니다.
byte [] dmxData = new byte [ 512 ];
ArtNetClient artnet = new ArtNetClient ();
artnet . start ();
// set data
dmxData [ 0 ] = 128 ;
// send data to localhost on subnet 0 and universe 0
artnet . unicastDmx ( "127.0.0.1" , 0 , 0 , dmxData );
artnet . stop ();
SendDmxData 기반
방송을 통해 데이터를 보내는 것도 가능합니다.
// to broad cast data
artnet . broadcastDmx ( 0 , 0 , dmxData );
데이터를 읽으려면 새 클라이언트를 생성하고 버퍼에서 바이트를 읽어야 합니다. 바이트를 0xFF
로 마스크해야 한다는 점에 유의하세요(서명되어 있기 때문).
ArtNetClient artnet = new ArtNetClient ();
artnet . start ();
byte [] data = artnet . readDmxData ( 0 , 0 );
System . out . println ( "First Byte: " + data [ 0 ] & 0xFF );
artnet . start . stop ();
receiveDmxData 기반
ArtNetClient
를 생성하는 동안 서버 (수신) 및 클라이언트 (발신)에 대한 특정 포트를 선택할 수 있습니다.
ArtNetClient artnet = new ArtNetClient ( new ArtNetBuffer (), 8000 , 8000 );
SendOnSpecificPort 기반
사용자 정의 네트워크 인터페이스를 설정할 수도 있습니다. 여기에서는 사용자 정의 네트워크 인터페이스 en5
를 ArtNet 서버에 바인딩하는 방법을 보여줍니다.
NetworkInterface ni = NetworkInterface . getByName ( "en5" );
InetAddress address = ni . getInetAddresses (). nextElement ();
artnet . start ( address );
새 패키지를 받았을 때 이벤트를 수신해야 하는 경우도 있습니다. 이를 위해 기본 ArtNetServer를 가져오고 여기에 새 리스너를 추가할 수 있습니다.
artnet = new ArtNetClient ();
// add packet listener to server
artnet . getArtNetServer (). addListener (
new ArtNetServerEventAdapter () {
@ Override public void artNetPacketReceived ( ArtNetPacket packet ) {
println ( "new packet received!" );
}
});
artnet . start ();
라이브러리는 당시 artnet4j 프로젝트를 기반으로 합니다.
Artistic License의 Art-Net은 IP/UDP를 통해 DMX 데이터를 방송하는 것을 허용합니다. 이 라이브러리는 Java 애플리케이션의 기본 프로토콜을 구현합니다.
현재 지원되는 핵심 기능은 다음과 같습니다.
이 프로젝트는 현재 아직 알파 이전 단계이므로 현재 hg를 통한 소스 액세스만 가능합니다. 또한 코드베이스의 많은 부분이 여전히 큰 변화를 겪고 있다는 점에 유의하세요.
Florian이 새로운 기능을 개발했습니다.