将 H.264 视频流式传输到网络上的另一台计算机/设备的最佳 C# 方法是什么?有这个库/API吗?文件共享?

发布于 2025-01-06 00:57:43 字数 559 浏览 1 评论 0原文

我正在尝试使用 C#,我想创建一个有趣/有用的网络程序。我多年来一直使用 C++ 进行编程,C# 似乎更干净、更容易编程。我主要编写数据结构和算法。我还没有真正接触过网络。

我的计算机上有视频文件,我希望能够将其共享/流式传输/发送到网络上的其他计算机。我最终将对其进行扩展并添加很多功能,但我想首先克服最困难的部分。

是否有一个库可以帮助进行数据管理?

我看到实现这一目标的三种方法,我不知道什么是最简单和最好的。

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

特点:

  • 我希望允许客户最终能够在必要时将视频教程文件复制到他们自己的计算机上,所以我不知道。也许缓冲是最好的解决方案。
  • 想要允许客户端暂停/下载视频。

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

I am experimenting with C#, and I wanted to create a fun/useful network program. I've programmed for most of my years using C++, C# seems a lot cleaner and easier to program in. I mostly programmed data structures and algorithms. I haven't really touched networking much.

I have video files on my computer that I would like to be able to share/stream/send to other computers on my network. I'm going to eventually expand on it and add a lot of features, but I want to conquer the hardest part first.

Is there a library out that helps with the data management for this?

I see accomplishing this three ways, Idk what's easiest and best.

  • Maybe using Windows File Sharing (Like how other computers on a network can open videos in a shared folder?)
  • Streaming the video data to the client computer? Then having their native video program open the data stream? (Buffer-like on youtube?)
  • Silverlight or some other Library. I can use the built in video player, etc to run it

Features:

  • I want to allow the client to be able to copy the video tutorial file to their own computer eventually if necessary, so idk. Maybe buffering is the best solution.
  • Want to allow the client to pause/download the video.

Hopefully I can learn a lot in this project.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

煞人兵器 2025-01-13 00:57:43

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

有关详细信息,请参阅 MSDN 上的 SDK 文档和文章 IIS Live Smooth Streaming 入门使用 IIS 媒体服务进行 Apple HTTP 直播< /a>.

You can use Microsoft Expression Encoder SDK to push video stream to a local port, or publish it in Windows or IIS Media Services. Windows Media Player, Silverlight or player-based application can be used for playback on another computer. Also, the are some options for playback on Apple devices. For H.264 support, you would need Pro version of the encoder.

For more information see the SDK documentation on MSDN, and articles Getting started with IIS Live Smooth Streaming and Apple HTTP Live Streaming with IIS Media Services.

坦然微笑 2025-01-13 00:57:43

您应该能够使用 vlc 对文件进行转码(或只是流式传输),然后连接到它生成的流。我知道您正在尝试使用 C#,但重新发明轮子似乎很奇怪,尤其是当它如此优秀的时候!

我相信您会从自动化 vlc 中获得一些乐趣。

You should be able to use vlc to transcode the file (or just stream it) then connect to the stream it produces. I know you're experimenting with C#, but it seems odd to re-invent the wheel, especially when it's such a good one!

I'm sure you'd have some fun automating vlc.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文