C# 无法使用nvlc.net播放http流

C# 无法使用nvlc.net播放http流,c#,.net,http,stream,vlc,C#,.net,Http,Stream,Vlc,我尝试使用nvlc API播放http流,但我有以下问题: 我可以播放本地视频: IMediaPlayerFactory factory = new MediaPlayerFactory(); IMedia media = factory.CreateMedia<IMedia>(@"C:\Videos\Movie.wmv"); IVideoPlayer player = factory.CreatePlayer<IVideoPlayer>(); player.Window

我尝试使用nvlc API播放http流,但我有以下问题:

我可以播放本地视频:

IMediaPlayerFactory factory = new MediaPlayerFactory();
IMedia media = factory.CreateMedia<IMedia>(@"C:\Videos\Movie.wmv");
IVideoPlayer player = factory.CreatePlayer<IVideoPlayer>();
player.WindowHandle = panel1.Handle;
player.Open(media);
player.Events.MediaEnded += new EventHandler(Events_MediaEnded);
player.Events.TimeChanged += new EventHandler<TimeChangedEventArgs>(Events_TimeChanged);
player.Play();
IMediplayerFactory=new MediaPlayerFactory();
IMedia media=factory.CreateMedia(@“C:\Videos\Movie.wmv”);
IVideoPlayer=factory.CreatePlayer();
player.WindowHandle=panel1.Handle;
播放器。打开(媒体);
player.Events.MediaEnded+=新的事件处理程序(Events\u MediaEnded);
player.Events.TimeChanged+=新事件处理程序(Events\u TimeChanged);
player.Play();
但无法播放http流:

IMediaPlayerFactory factory = new MediaPlayerFactory();
IMedia media = factory.CreateMedia<IMedia>(@"http://90.189.198.75:1234/udp/233.7.70.84:5000");
IVideoPlayer player = factory.CreatePlayer<IVideoPlayer>();
player.WindowHandle = panel1.Handle;
player.Open(media);
player.Events.MediaEnded += new EventHandler(Events_MediaEnded);
player.Events.TimeChanged += new EventHandler<TimeChangedEventArgs>(Events_TimeChanged);
player.Play();
IMediplayerFactory=new MediaPlayerFactory();
IMedia媒体=工厂。创建媒体(@“http://90.189.198.75:1234/udp/233.7.70.84:5000");
IVideoPlayer=factory.CreatePlayer();
player.WindowHandle=panel1.Handle;
播放器。打开(媒体);
player.Events.MediaEnded+=新的事件处理程序(Events\u MediaEnded);
player.Events.TimeChanged+=新事件处理程序(Events\u TimeChanged);
player.Play();
感谢您的关注和宝贵时间

编辑:


在互联网上寻找了很长时间的解决方案后,流突然开始了,没有任何问题。使用原始代码!可能probem在流中,但我不知道为什么VLC播放器没有问题。谢谢大家的帮助。

这可能是问题的原因,也可能不是。。。冒号
是URL中的保留字符,应该转义

http://90.189.198.75:1234/udp/233.7.70.84%3A5000

当你说你不能播放流-会发生什么?您看到错误了吗?是的,没有错误。只是查看了一下-您是否配置了日志记录?其中可能有一些内容需要查看-看起来您需要在配置文件中添加一节,因为NLog:5000是一个http流端口,不应转义。是的,这部分看起来正常-有以下示例:
IMedia media=factory.CreateMedia(@“udp://@172.16.10.1:19005”);好啊但这不是你的网址。您有一个HTTP url,其中似乎嵌入了第二个udp“url”。流的端口是1234,而不是端口5000。任何位于90.189.198.75:1234的内容都应取消“嵌入的”udp“url”的替换。标准规定,HTTP URL不应将
用于端口号以外的任何内容。在此url中,端口号为1234。url的最后一部分类似于端口,而不是HTTP中的端口号。它只是url的一部分,因此,在此上下文中使用冒号意味着您正在呈现一个损坏的url。@stoyanov流的http端口显然是1234,而不是5000。@spender Good spot-我忽略了奇怪IP地址和最终“端口”之间的所有内容。