2013-04-29 117 views
5

我需要通过HTTP(用于移动设备)传输非常大量的高质量视频。无法使用ffmpeg创建视频的“流式”版本。c#通过HTTP流式传输质量降低的视频

我还必须支持HTTP的seek/begin功能,以便用户可以跳过视频。

我正在使用ServiceStack(不是IIS)。

有没有可用的选项呢?

我可以访问服务器,所以任何第三方服务都可以接受。

回答

4

我们最近添加了部分内容支持都在directly serving Static files以及via a Web Service。这将在本周末计划的NuGet上的v3.9.44 release of ServiceStack中提供(如果您在此之前需要,您可以构建ServiceStack from the repo)。

部分内容支持,将自动启用它将被提供给寻求/流的任何静态文件(通过ServiceStack担任),以及任何服务:

返回一个文件:

return new HttpResult(new FileInfo(filePath), request.MimeType); 

返回字节:

return new HttpResult(byteArray, "audio/mpeg"); 

返回流:

return new HttpResult(memoryStream, "audio/mpeg"); 

返回原始字符串:

return new HttpResult(customText, "text/plain"); 

要禁用部分内容支持集:

Config.AllowPartialResponses = false; 
+0

美丽!有关视频压缩版本的任何建议? – 2013-04-29 15:34:36

+0

不,我们只是启用数据传输,压缩是一个应用程序级别的问题,我认为它已经在被返回的压缩流/字节中,客户已经理解/期望该压缩流/字节。 – mythz 2013-04-29 15:38:51

+1

我仍然有点震惊,我的API添加视频支持“刚刚工作”...复制/粘贴我的图像服务,调整一些东西,瞧。真棒。 – sirthomas 2013-11-30 23:38:26