Потоковое видео в реальном времени с использованием Java?
-
12-09-2019 - |
Вопрос
Есть ли хорошие библиотеки для потоковой передачи видео в реальном времени с использованием Java?В идеале оба конца канала должны быть написаны на Java, но меня больше всего беспокоит видеоплеер.Какое программное обеспечение вы бы порекомендовали?
ОБНОВЛЯТЬ:Кажется, что VLC вводит задержку в 1-2 секунды.Мне нужна потоковое видео, которое будет по-настоящему живым.Задержка записи-воспроизведения должна быть менее 300 мс.
Решение
Лучшая библиотека воспроизведения/кодирования видео, которую я когда-либо видел, — это ffmpeg.Он воспроизводит все, что вы в него бросаете.(Он используется MPlayer.) Он написан на C, но я нашел несколько оболочек Java.
- FFMPEG-Java:Java-обертка вокруг ffmpeg с использованием JNA.
- jffmpeg:Этот интегрируется с JMF.
Другие советы
Вы всегда можете проверить JMF (Java Media Framework).Он довольно старый и заброшенный, но работает, и я раньше использовал его для приложений.Похоже, он справляется с тем, о чем вы просите.
JMF был заброшен.VLC более современный и читает все.https://stackoverflow.com/a/5160010
Я думаю, что vlc превосходит любое другое программное обеспечение, или, по крайней мере, те, которые я знаю...
Да, если вы хотите транслировать видео в реальном времени, вы можете использовать Протокол RTSPэто позволит вам создать видеофайл, который можно будет воспроизводить во время создания; обе операции будут работать одновременно. RTSP-Клиент-Сервер
Привет, я не эксперт в потоковой передаче, но насколько я понимаю, она включена в Java Media Framework JMF. http://java.sun.com/javase/technologies/desktop/media/jmf/2.1.1/support-rtsp.html