4

サポートされている場合は HTML5 ビデオ タグを使用し、サポートされていない場合は JW Player を使用して、ASP MVC 4 Web サイトでビデオを再生する必要があります。ここで、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 PLayer 再生 - エラーが発生 -

エラー ask キューがステップ 5 で失敗しました: プレイリストを読み込めませんでした: プレイリスト ファイルに有効なプレイリストが含まれていませんでした

リンクを使用してファイルにアクセスする場合 (上記のように) - 少なくとも再生できます。

私が理解しているように、このような「wcf ストリーミング」はビデオの再生には適していません。ここではWCFはまったくオプションではないのでしょうか?したがって、IIS (7+ / Server 2008) での適切なビデオ ストリーミングのヘルプとアドバイス\例は、非常に高く評価されます。

ありがとう。

4

1 に答える 1

0

応答ヘッダーを設定する必要があります。具体的には: Content-Range X-Content-Duration Content-Length

于 2014-11-03T11:42:55.703 に答える