Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows C和Android Java之间实时视频流的有用API?_Java_C#_Udp_Live Streaming - Fatal编程技术网

Windows C和Android Java之间实时视频流的有用API?

Windows C和Android Java之间实时视频流的有用API?,java,c#,udp,live-streaming,Java,C#,Udp,Live Streaming,遵循以下方法。我希望客户端使用IP通信将视频实时流传输到服务器。需求是Android Studio Java客户端和Visual Studio C服务器,这就是为什么我没有找到StackOverFlow的确切情况。我在Android Java和Windows C之间建立了一个基本的UDP数据报,它可以双向发送短消息。从哪里开始视频流 我应该自己弄清楚如何在服务器中逐帧获取图像,将每个帧分解为字节[]对它们进行排序并使用UDP发送,然后在客户端,使用接收到的字节[]数据重建每个帧吗? 使用UDP不

遵循以下方法。我希望客户端使用IP通信将视频实时流传输到服务器。需求是Android Studio Java客户端和Visual Studio C服务器,这就是为什么我没有找到StackOverFlow的确切情况。我在Android Java和Windows C之间建立了一个基本的UDP数据报,它可以双向发送短消息。从哪里开始视频流

我应该自己弄清楚如何在服务器中逐帧获取图像,将每个帧分解为字节[]对它们进行排序并使用UDP发送,然后在客户端,使用接收到的字节[]数据重建每个帧吗? 使用UDP不好吗? C和Java上有哪些有用的API? 从长远来看,将两者都设置为Java会更容易吗? 我现在需要时间来适应Windows Java IDE并从那里开始吗?它和Android一样吗


我脑子里有两个问题,我没有足够的知识。我以前从未做过大型或网络应用程序。我不知道该做什么。找到API真的很有帮助。提前感谢

不要发明自己的协议,使用现有的协议,如RTP、RTSP甚至HTTP服务器

例如,RTSP实时流协议:

有了这个项目,您就可以设置RTSP服务器,它只需5行C代码就可以提供一个媒体文件

using(Rtsp.RtspServer server = new Rtsp.RtspServer(555)){    
    Media.Rtsp.Server.Media.RtspSource source = 
          new Media.Rtsp.Server.Media.RtspSource("RtspSourceTest", "rtsp://1.2.3.4/mpeg4/media.amp");

   //If the stream had a username and password
   //source.Client.Credential = new System.Net.NetworkCredential("user", "password");

   //Add the stream to the server
   server.AddMedia(source);

   //Start the server and underlying streams
   server.Start();
} 
根据项目页面:

RTSPSServer能够成功地将任何容器或编解码器中的实时Rtsp视频流聚合到兼容的Rtsp客户端或播放器VLC,Mplayer Darwin流媒体服务器和QuickTime都经过测试

这可以让你把你的网络相机或数码相机或图像源变成一个实时的Rtsp流


使用C编写的服务器端作为通用RTSP服务器,您可以使用现有对象(如Java/Android端的普通VideoView)来连接和查看实时流,而不会出现问题。

不要发明自己的协议,使用现有的协议,如RTP、RTSP甚至HTTP服务器

例如,RTSP实时流协议:

有了这个项目,您就可以设置RTSP服务器,它只需5行C代码就可以提供一个媒体文件

using(Rtsp.RtspServer server = new Rtsp.RtspServer(555)){    
    Media.Rtsp.Server.Media.RtspSource source = 
          new Media.Rtsp.Server.Media.RtspSource("RtspSourceTest", "rtsp://1.2.3.4/mpeg4/media.amp");

   //If the stream had a username and password
   //source.Client.Credential = new System.Net.NetworkCredential("user", "password");

   //Add the stream to the server
   server.AddMedia(source);

   //Start the server and underlying streams
   server.Start();
} 
根据项目页面:

RTSPSServer能够成功地将任何容器或编解码器中的实时Rtsp视频流聚合到兼容的Rtsp客户端或播放器VLC,Mplayer Darwin流媒体服务器和QuickTime都经过测试

这可以让你把你的网络相机或数码相机或图像源变成一个实时的Rtsp流


使用C编写的服务器端作为通用RTSP服务器,您可以使用现有对象(如Java/Android端的普通VideoView)连接并查看实时流,而不会出现问题。

Hi,这看起来很有用,我正在尝试。因此,这种设计就像C通用RTSP服务器将网络摄像头流转换成uri,然后Java端将只使用该uri来查看?@firestop确切地说,这是它的顶级抽象。有了正确的库,只需几行代码就可以完成。谢谢,先生。对吧,就像你送的那个?我应该放弃所有的基本代码,开始构建一个C RTSP服务器吗?我发布了它,你能告诉我你的建议吗?你自己发送UDP数据包的方法对于小应用来说是可以的,你只需要发送一条左右的消息。编写自己的流媒体协议,通过UDP将视频数据传输到另一个设备,这将是一件非常痛苦的事情,这就是为什么我建议使用现有协议和库,它们为您提供了一个易于使用的服务器实现。所以,是的,不要自己开始为livestream微管理UDP数据包,要考虑更大的问题。让一个RTSP服务器启动并运行一些mediasource,然后开始连接到它的livestream。你能添加任何你认为对我实现这一点有帮助的知识吗?你也想分享吗?嗨,这看起来很有用,我正在尝试。因此,这种设计就像C通用RTSP服务器将网络摄像头流转换成uri,然后Java端将只使用该uri来查看?@firestop确切地说,这是它的顶级抽象。有了正确的库,只需几行代码就可以完成。谢谢,先生。对吧,就像你送的那个?我应该放弃所有的基本代码,开始构建一个C RTSP服务器吗?我发布了它,你能告诉我你的建议吗?你自己发送UDP数据包的方法对于小应用来说是可以的,你只需要发送一条左右的消息。编写自己的流媒体协议,通过UDP将视频数据传输到另一个设备,这将是一件非常痛苦的事情,这就是为什么我建议使用现有协议和库,它们为您提供了一个易于使用的服务器实现。所以是的,不要自己开始微管理livestream的UDP数据包,
想得更大些。让一个RTSP服务器启动并运行一些mediasource并开始连接到它的livestream。你能添加任何你认为对我实现这一点有帮助的知识吗?你也想分享吗?