我正在尝试提供实时流(即完全缓冲在内存中,无法访问过去)并且在使用 Expression Encoder 4 时遇到问题。
理想情况下,我只想将裸露的 H.264 字节流流式传输到由以下人员使用的客户端:
<video id="mainVideoWindow">
<source src='http://localhost/path/to/my/stream.mp4' type='video/mp4' />
</video>
我想我可以像通过 HTTP 的任何其他字节流一样将它流式传输到客户端。但是,我无法确定所需的适当代码(使用 Expression Encoder 的第一天,不知道如何获取原始字节流),所以我也不知道它是否会首先工作。
另一种方法是使用 IIS Live Streaming 服务器:
var source = job.AddDeviceSource(device, null);
job.ActivateSource(source);
job.ApplyPreset(LivePresets.VC1IISSmoothStreaming720pWidescreen);
var format = new PushBroadcastPublishFormat();
format.PublishingPoint = new Uri("http://localhost/test.isml");
job.PublishFormats.Add(format);
job.StartEncoding();
// Let's listen for a keypress or error message to know when to stop encoding
while (Console.ReadKey(true).Key != ConsoleKey.X) ;
// Stop our encoding
Console.WriteLine("Encoding stopped.");
job.StopEncoding();
但是,我无法让客户端标记想要在 Chrome 上显示视频,而且我没有看到任何表明它可以在 Chrome 上运行的东西(尽管http://learn.iis.net/page. aspx/854/apple-http-live-streaming-with-iis-media-services指示它将如何与 iOS 设备一起工作)。
有人有任何见解吗?