为什么jmf不能播放rtp流?
why jmf can't play rtp stream?
我用 ffmpeg 制作了一个 rtp link,我尝试收听和播放这个流。 VLC 和 ffmpeg 可以播放 rtp 流,都很好,但 jmf 不行。
虽然没有报错,但是jmf没有播放rtp流,没有声音。
我的 rtp 流(http:.. 是一个收音机 link 和 rtp:...我的流)
ffmpeg -i http://airspectrum.cdnstream1.com:8114/1648_128 -acodec copy -f rtp "rtp://127.0.0.1:10000/audio/1"
public void play() {
MediaLocator mediaLocator = new MediaLocator("rtp://127.0.0.1:10000/audio/1");
try {
if (mediaLocator == null) {
System.err.println("null locator");
}
player = Manager.createRealizedPlayer(mediaLocator);
player.start();
} catch (CannotRealizeException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (NoPlayerException e) {
e.printStackTrace();
}
}
- os ubuntu 16.08
- java jdk 1.8
- javax.media.jmf 2.1.1e(maven 回购版本)
打开您的主机文件 (nano /etc/hosts) 并添加您的 IP 和用户名 (192.168.X.XXX 用户名)。我不知道确切的原因,但它对我有用!
我用 ffmpeg 制作了一个 rtp link,我尝试收听和播放这个流。 VLC 和 ffmpeg 可以播放 rtp 流,都很好,但 jmf 不行。
虽然没有报错,但是jmf没有播放rtp流,没有声音。
我的 rtp 流(http:.. 是一个收音机 link 和 rtp:...我的流)
ffmpeg -i http://airspectrum.cdnstream1.com:8114/1648_128 -acodec copy -f rtp "rtp://127.0.0.1:10000/audio/1"
public void play() {
MediaLocator mediaLocator = new MediaLocator("rtp://127.0.0.1:10000/audio/1");
try {
if (mediaLocator == null) {
System.err.println("null locator");
}
player = Manager.createRealizedPlayer(mediaLocator);
player.start();
} catch (CannotRealizeException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (NoPlayerException e) {
e.printStackTrace();
}
}
- os ubuntu 16.08
- java jdk 1.8
- javax.media.jmf 2.1.1e(maven 回购版本)
打开您的主机文件 (nano /etc/hosts) 并添加您的 IP 和用户名 (192.168.X.XXX 用户名)。我不知道确切的原因,但它对我有用!