2012-02-17 16 views
1

我正在试验C#,我想创建一个有趣/有用的网络程序。我大部分时间都是使用C++进行编程的,C#看起来更简洁,更容易编程。我主要编写了数据结构和算法。我没有真正触及过很多网络。什么是将H.264视频流式传输到网络上另一台计算机/设备的最佳C#方法?有没有一个库/ API为此?文件共享?

我在我的电脑上有视频文件,我希望能够共享/流/发送到我的网络上的其他电脑。我将最终扩展它并添加很多功能,但我想先征服最难的部分。

有没有一个库可以帮助数据管理呢?

我看到完成这三种方式,Idk什么是最简单和最好的。

  • 也许使用Windows文件共享(就像其它如何在网络上的计算机可以共享文件夹?打开视频)
  • 视频数据传输到客户端计算机?然后让他们的原生视频程序打开数据流? (像YouTube上的缓冲区?)
  • Silverlight或其他一些库。我可以使用内置的视频播放器等运行它

特点:

  • 我想允许客户端能够最终,如果有必要的视频教程文件复制到自己的电脑,所以idk。也许缓冲是最好的解决方案。
  • 希望允许客户端暂停/下载视频。

希望我能在这个项目中学到很多东西。

+1

最好?这是非常主观的。尽管在我看来,它是不必要的混淆,有点缺乏,但UPnP/DLNA客户端/服务器正在被许多硬件制造商(智能电视等)采用,所以可以说是最好的。这取决于你如何看待事物。 – spender 2012-02-17 00:46:09

+1

看看[MS Expression Encoder](http://expression.microsoft.com/en-us/gg574359) – Flot2011 2012-02-17 00:50:01

+0

http://opentools.homeip.net/dev-tools-for-upnp – spender 2012-02-17 00:54:20

回答

2

您可以使用Microsoft Expression Encoder SDK将视频流推送到本地端口,或将其发布到Windows或IIS Media Services中。 Windows Media Player,Silverlight或基于播放器的应用程序可用于在另一台计算机上播放。此外,还有一些Apple设备上播放的选项。对于H.264支持,您需要Pro版本的编码器。

欲了解更多信息,请参阅MSDN上的SDK文档和文章Getting started with IIS Live Smooth StreamingApple HTTP Live Streaming with IIS Media Services

1

您应该可以使用vlc对文件进行转码(或者只是流式传输),然后连接到它产生的流。我知道你正在试验C#,但重新发明轮子似乎很奇怪,特别是当它非常好时!

我相信你会有一些有趣的自动化vlc。

相关问题