Я нахожусь на самом раннем этапе проекта, требующего широковещательной передачи, используя RTP, DataStream
, созданного с помощью MediaLocation
. Я последовавший пример код, который в настоящее время failingin на rptManager.initalize(localAddress)
с ошибкой «Невозможно открыть локальный порт данных: хххе», а именно:Проблемы с созданием потока RTP с помощью JMF
Exception in thread "main" javax.media.rtp.InvalidSessionAddressException: Can't open local data port: 34586
at com.sun.media.rtp.RTPSessionMgr.initialize(RTPSessionMgr.java:2688)
at com.sun.media.rtp.RTPSessionMgr.initialize(RTPSessionMgr.java:2515)
at RTPBroadcast.main(RTPBroadcast.java:20)
Я развивающийся на Lucid и мой брандмауэр полностью отключен. Я немного тупой, если честно. Мой код выглядит следующим образом:
// http://jcs.mobile-utopia.com/jcs/26201_RTPManager.java
public class RTPBroadcast {
public static void main (String[] args) throws InvalidSessionAddressException, IOException, UnsupportedFormatException {
RTPManager rtpManager = RTPManager.newInstance();
SessionAddress localAddress = new SessionAddress();
rtpManager.initialize(localAddress);
InetAddress ipAddress = InetAddress.getByName("192.168.1.5");
SessionAddress remoteAddress = new SessionAddress(ipAddress, 3000);
rtpManager.addTarget(remoteAddress);
DataSource dataOutput = new ScreenSource();
SendStream sendStream = rtpManager.createSendStream(dataOutput, 1);
sendStream.start();
}
}
Любые идеи о том, что может вызвать проблемы?