使用net7mma项目中的RtspServer到组播流

时间:2015-05-04 18:43:50

标签: c# network-programming video-streaming

我正在使用net7mma项目来创建媒体服务器,但我不知道如何将其用于多播流。

在我的研究中,我看到RTSP是一种应用层协议,它使用RTP进行实际数据传输,最后一种使用UDP。这个图书馆的创建者并没有提供免费咨询:他说的唯一的事情是"研究OSI模型我的图书馆支持多播"但我不知道如何使用此代码。这是我的代码。

using (RtspServer server = new RtspServer(IPAddress.Any, 554) { Logger = new RtspServerConsoleLogger() })
{
    RtspSource source = new RtspSource("stream", "rtsp://127.0.0.1:8554/stream");
    server.TryAddMedia(source);
    server.Start();
    while (!server.IsRunning)
    {
        Thread.Sleep(0);
    }
    foreach (var item in server.MediaStreams)
    {
        //Console.WriteLine(item.Ready);
        //Console.WriteLine(item.State);
    }
    Console.ReadKey();
    server.Stop();
}

如果您看到唯一的选择是将套接字服务器绑定到本地IP地址。也许我被封锁了,并没有看到问题。

我想要做的是像VLC那样使用更新多播流来设置目的地的多播地址。

1 个答案:

答案 0 :(得分:0)

创建者为错误提供免费支持,而不是系统设计咨询。

问题在于您无法理解多播传输和接收的工作方式。

您可以轻松使用多播或单播流,也可以发布多播流,但必须正确配置网络。

如果摄像机不是多播,则实现多播的最简单方法是使用网络资源多播重新传输单播流。

您还可以将一个线程专用于多播转发器(它重复多个单播源,组合或转码或其中的任务组合)

这就是你真正需要知道的......