This is example of java-airplay-lib usage.
It's under development.
Add java-airplay-server dependency to your project
Implement AirplayDataConsumer and start AirPlayServer, for example:
FileChannel videoFileChannel = FileChannel.open(Paths.get("video.h264"), StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING, StandardOpenOption.WRITE);
FileChannel audioFileChannel = FileChannel.open(Paths.get("audio.pcm"), StandardOpenOption.CREATE, StandardOpenOption.TRUNCATE_EXISTING, StandardOpenOption.WRITE);
AirplayDataConsumer dumper = new AirplayDataConsumer() {
@Override
public void onVideo(byte[] video) {
videoFileChannel.write(ByteBuffer.wrap(video));
}
@Override
public void onAudio(byte[] audio) {
if (FdkAacLib.isInitialized()) {
byte[] audioDecoded = new byte[480 * 4];
FdkAacLib.decodeFrame(audio, audioDecoded);
audioFileChannel.write(ByteBuffer.wrap(audioDecoded));
}
}
};
String serverName = "AirPlayServer"; int airPlayPort = 15614; int airTunesPort = 5001; new AirPlayServer(serverName, airPlayPort, airTunesPort, dumper).start();
## More examples
see repo [java-airplay-server-examples](https://github.com/serezhka/java-airplay-server-examples)
<img src="https://github.com/serezhka/java-airplay-server-examples/blob/media/gstreamer_playback.gif" width="600">