Я создал ссылку rtp с ffmpeg, и я попытался слушать и играть в этот поток. VLC и ffmpeg могут воспроизводить поток rtp, оба работают хорошо, но jmf этого не делает.Почему jmf не может воспроизводить поток rtp?
Несмотря на отсутствие каких-либо ошибок, jmf не воспроизводит поток rtp и звука нет.
Мой РТП поток (Http: .. это радио связь и РТП: ... мой поток)
FFmpeg -i http://airspectrum.cdnstream1.com:8114/1648_128 -acodec копия -f РТП «РТП: //127.0.0.1: 10000/аудио/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();
}
}
- ОС Ubuntu 16,08
- Java JDK 1.8
- javax.media.j mf 2.1.1e (версия maven repo)
В одном из этих форматов? -> http://www.oracle.com/technetwork/java/javase/formats-138492.html#RTPFormats – Fildor
Я изменил ffmpeg-кодек на mp2 (Audio: MPEG Layer I, II), который поддерживается jmf, но до сих пор нет голоса , это было для серверной части (произвести поток rtp). и на стороне клиента я нашел >> Формат input1 = новый AudioFormat (AudioFormat.MPEG_RTP); Формат вывода = новый AudioFormat (ContentDescriptor.RAW_RTP); PlugInManager.addPlugIn ("com.sun.media.codec.audio.mp3.JavaDecoder", новый формат [] {} вход1, новый формат [] {выход}, PlugInManager.CODEC ); но никаких изменений. –
com.sun.media.codec.audio.mp3.Java ** D e ** coder для вывода? Идк, но так ли? – Fildor