14.12.2022: Check out new java-airplay project: https://github.com/serezhka/java-airplay
All examples were tested with iPhone X (iOS 14.0.1)
09.06.2022 supports both video and audio (alac + aac_eld)
Gstreamer installation required (see https://github.com/gstreamer-java/gst1-java-core)
video demo
gstreamer_player.1.mp4
TODO description
Forwards video and audio data to TCP
Play it with GStreamer or FFmpeg
cd tcp-forwarder/
gradle bootRun
gst-launch-1.0 -v tcpclientsrc port=5002 ! h264parse ! avdec_h264 ! autovideosink
or
ffplay -f h264 -codec:v h264 -i tcp://localhost:5002 -v debug
ffplay -autoexit -f s16le -ar 44100 -ac 2 tcp://localhost:5003
You need to compile lib-fdk-aac for aac-eld decoding
Saves video data stream to .h264 file, decoded audio to .pcm file
cd h264-dump/
gradle bootRun
ffplay -autoexit -f s16le -ar 44100 -ac 2 dump.pcm
You need to compile lib-fdk-aac for aac-eld decoding
Playback screen mirroring in embedded vlc
Install VLC (https://github.com/caprica/vlcj)
cd vlcj-player/
gradle bootRun
Playback screen mirroring with jmuxer
cd vlcj-player/
gradle bootRun
open index-h264.html in browser