byte[] ip = new byte[4];
ip[0] = (byte) 192;
ip[1] = (byte) 168;
ip[2] = (byte) 1;
ip[3] = (byte) 8;
SessionAddress localSessionAddr = new SessionAddress(
InetAddress.getByAddress(ip), LOCAL_RTP_PORT);
Throws: Local Data Address Does not belong to any of this hosts local interfaces
[solution and reason]
The problem is JMF seems to use InetAddress.getAllByName() which gives (in most cases) only single IP address as it may not be in the /etc/hosts. It can be sorted out by setting your interface ip (say eth0, wlan0) in /etc/hosts [1].
> cat /etc/hosts
> 127.0.0.1 localhost
> 127.0.1.1 noor
> 192.168.1.8 noor