首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何利用Java实现RTSP服务器流/发送H264格式

如何利用Java实现RTSP服务器流/发送H264格式
EN

Stack Overflow用户
提问于 2015-08-10 10:26:53
回答 1查看 5.2K关注 0票数 2

我目前正在尝试制作一个RTSP server,它使用Java来流H264格式的视频。

我的RTSP client将是一台通过以太网电缆连接到服务器的计算机监视器。我被告知显示器能够显示传入的H264格式的视频。我还没有显示器。

尽管我还没有显示器,我还是想看到一些有用的东西。我通过使用vlc media player实例作为服务器,使用另一个vlc media player实例作为客户端(在本教程之后)来实现这一点。现在我必须实现一个RTSP server,它可以流H264格式。我找不到任何关于如何使用Java实现此操作的信息。VLC media player有这方面的Java API吗?还是有什么源代码可以帮助我了解如何使用Java实现这一点?

提前谢谢。

编辑:这里 --我找到了一个很好的起点,如果我能管理的话,我会把解决方案作为源代码。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-11 14:49:53

我解决了。

  1. 您需要按照为您的环境做准备。确保您使用所有64位或所有32位版本的VLC,IDE,Java和OS。
  2. 您必须创建一个类并向其添加以下代码块:

代码块:

代码语言:javascript
复制
public static void main(String[] args) throws Exception
{
     // your VLC installation path
     NativeLibrary.addSearchPath("libvlc", "C:\\Program Files\\VideoLAN\\VLC");

     String media = "your file url"; // example = file:///C:/test.mp4
     // you are gonna use below value on the client 
     String[] options = {":sout=#rtp{sdp=rtsp://localhost:8554/stream"};

     System.out.println("Streaming '" + media + "' to '" + options + "'"); 

     MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(); 
     HeadlessMediaPlayer mediaPlayer = mediaPlayerFactory.newHeadlessMediaPlayer(); 
     mediaPlayer.playMedia(media, options, ":no-sout-rtp-sap", ":no-sout-standard-sap", ":sout-all", ":sout-keep");

     // Don't exit
     Thread.currentThread().join();
}
  1. 现在您可以使用VLC媒体播放器作为RTSP客户端。在左侧打开VLC媒体播放器,单击" media ",然后单击"Open Network“。输入前面给出的网络Url "rtsp://localhost:8554/stream“,让它等待。在你做完第四步之后,按“播放”。
  2. 以Java应用程序的形式运行您的类。

现在,您应该能够看到您的视频在VLC媒体播放器,您打开作为RTSP客户端之前。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31917178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档