WCF REST Streaming用于视频播放

时间:2012-04-20 16:59:56

标签: wcf flash html5 video streaming

我需要在ASP MVC 4网站上播放带有HTML5视频标签的视频(如果支持),否则播放JW播放器。现在我使用WCF REST方法以下列方式访问视频文件:

    [OperationContract]
    [WebInvoke(ResponseFormat = WebMessageFormat.Json, Method = "GET")]
    public Stream Download(string id, bool isTemp)
    {
        //File.OpenRead(path) works inside FileBlo.Fownload 
        Stream download = FileInfoBlo.Download(id, isTemp);
        if (WebOperationContext.Current != null)
        {
            //Specifing any other mime type doesn't help
            WebOperationContext.Current.OutgoingResponse.ContentType = "video/*";
        }
        return download;
    }

因此该文件的链接就像

  
    

http://localhost/app-api/Apiservice.svc/download?id=8&isTemp=false

  

问题是:
1。 HTML5播放 - 只有Chrome可以播放视频,但无法执行任何其他操作 - 停止,再次播放,搜索等。其他浏览器根本无法播放。仅使用指向文件的链接访问文件时,如

  
    

“HTTP://localhost/app/file.mp4”

  

可以播放。


2。 JW播放器播放 - 发生错误 -

  
    

错误询问队列在步骤5失败:无法加载播放列表:播放列表文件不包含有效的播放列表

  

使用链接访问文件时(如上所示) - 它至少可以播放。

据我所知,这种“wcf流媒体”不适合视频播放。 可能是WCF在这里根本不是一个选择吗? 因此,IIS(7+ / Server 2008)中适当的视频流的任何帮助和建议\示例都将受到极大关注。

感谢。

1 个答案:

答案 0 :(得分:0)

您需要设置响应标头。特别: 内容范围 X-内容持续时间 内容长度